首页 > 编程语言 >【JAVA笔记】JAVA的Scanner类、String类的判断功能、String类的获取功能、String类的转换功能-07

【JAVA笔记】JAVA的Scanner类、String类的判断功能、String类的获取功能、String类的转换功能-07

时间:2022-12-20 09:56:17浏览次数:54  
标签:功能 JAVA String System Scanner 字符串 println out

一、Scanner类

1、说明:

Scanner类主要用于扫描用户从控制台输入的文本,即当用户需要输入数据时,调用java.util包中的Scanner类,Scanner类能获取用户所输入的数据。

如何使用Scanner类

导入Scanner包

import java.util.Scanner; 

 实例:

package cn.test02.demo5;

import java.util.Scanner;

public class Test1 {
    public static void main(String[] args) {
        //创建Scanner类型的对象(注意,要导包)
        //System.in:标准的输入流,默认指向键盘
        Scanner sc1 = new Scanner(System.in);
        //接受整数
        System.out.println("请输入一个整数");
        //为了解决(避免)InputMismatchException异常,可以加一个判断
        if (sc1.hasNextInt()) {
            //判断下一个录入的是否是整数,如果是,结果就是True
            int num = sc1.nextInt();
            System.out.println("num:" + num);
        }
        //接受一个字符串类型的数据
        Scanner sc2 = new Scanner(System.in);
        System.out.println("请录入一个字符串");
        String str1 = sc2.nextLine();//结束标记是:换行符
        System.out.println("str1:" + str1);

        Scanner sc3 = new Scanner(System.in);
        System.out.println("请录入一个字符串");
        String str2 = sc3.next();//结束标记:空白字符(空格、tab、换行符)
        System.out.println("str2:" + str2);
    }
}

运行结果:

 注意:
在实际开发中,应用到的最多的是:
nextInt(): 接收整数
nextLine(): 接受字符串

二、String类的判断功能

 例:String类的判断功能

package cn.test02.demo5;


public class Test2 {
    public static void main(String[] args) {
        //测试构造方法
        //1、将制定的字节数组转成字符串
        //a:‘97’
        byte[] bys = {97, 98, 99};
        String s1 = new String(bys);
        System.out.println("s1:" + s1);

        //2.将指定的字符数组转成字符串
        char[] cha = {'h', 'e', 'l', 'l', 'o'};
        String s2 = new String(cha);
        System.out.println("s2:" + s2);

        //在实际开发中,String类非常常用,每次都new很麻烦,于是对于String的语法做了优化,省去了new的动作
        String s3 = "abc";//优化
        String s4 = new String("abc");//未优化
        System.out.println("s3:" + s3);
        System.out.println("s4:" + s4);
        System.out.println("-------------------");

        //测试成员方法
        String str1 = "abc";
        String str2 = "ABC";
        //判断当前字符串与给定字符串是否相同,区分大小写
        boolean b1 = str1.equals(str2);
        System.out.println("equals():" + b1);
        //判断当前字符串与给定字符串是否相同,不区分大小写
        boolean b2 = str1.equalsIgnoreCase(str2);
        System.out.println("equalsIgnoreCase():" + b2);
        //判断是否以给定字符串开头
        //需求:判断字符串str1,是否以字符串”a“开头
        boolean b3 = str1.startsWith("a");
        System.out.println("startsWith():" + b3);
        //判断字符串是否为空
        boolean b4 = str1.isEmpty();
        System.out.println("isEmpty():" + b4);

    }
}

返回结果:

三、String类的获取功能

 例:String类的获取功能

package cn.test02.demo5;

public class Test3 {
    public static void main(String[] args) {
        //定义一个字符串
        String str = "Hello java";

        //获取当前字符串长度
        int length = str.length();
        System.out.println("该字符串的长度:" + length);

        //获取指定字符(串)第一次出现的索引
        //需求:字符‘l’第一次出现的位置
        int index1 = str.indexOf('a');
        System.out.println("字符‘a’第一次出现的位置索引:" + index1);
        //获取指定字符(串)最后一次出现的索引
        //需求:字符‘l’最后一次出现的位置
        int index2 = str.lastIndexOf("l");
        System.out.println("字符‘l’最后一次出现的位置的索引:" + index2);
        //获取指定索引位置(含)之后的字符串
        //需求:截取从索引3开始的所有元素
        String s1 = str.substring(3);
        System.out.println("截取从索引3开始的所有元素为:" + s1);
        //获取从索引开始位置(含)到索引结束位置(不含)的字符串
        //需求:获取从索引6到索引10的字符串
        String s2 = str.substring(6, 10);
        System.out.println("从索引6到索引10的字符串为:" + s2);


    }
}

运行结果:

四、String类的转换功能

 例:String类的转换功能

package cn.test02.demo5;

public class Test4 {
    public static void main(String[] args) {
//        定义一个字符串
        String s1 = "abc";

        //    将字符串转换成字节数组.a的字节值为97
        byte[] bys = s1.getBytes();
        for (int i = 0; i < bys.length; i++) {
            System.out.println(bys[i]);

        }
        System.out.println("--------------------");

        //将字符串转换为字符数组
        char[] chs = s1.toCharArray();
        for (int i = 0; i < chs.length; i++) {
            System.out.println(chs[i]);
        }
        System.out.println("--------------");

        //将指定类型数据转换成字符串:static String valueOf();
        //整数123 --> 字符串"123"
        String s2 = String.valueOf(123);
        System.out.println(s2 + 4);
        //在实际开发中,上述的方式基本上都会用下面的这行代码替代
        String s3 = "" + 123;
        System.out.println(s3 + 4);

        //将指定字符(串)替换成新的字符(串)
        String s4 = "abc abc abc";
        //"d"替换”b“
        String s5 = s4.replace("b", "d");
        System.out.println("替换后的字符串为:" + s5);
        //切割字符串,返回切割后的字符串数据,原字符串不变
        //将字符串s4,按照空格进行切割

        //切割字符串,返回切割后的字符串数据,原字符串不变
        //将字符串s4,按照空格进行切割
        String[] arr = s4.split(" ");
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
        System.out.println("----------------------------");
        //去掉字符串两端的空白字符
        String s6 = "a b c";
        String s7 = s6.trim();
        System.out.println("s6:" + s6);
        System.out.println("s7:" + s7);


    }
}

运行结果:

 

 

  

 

 

  

  

  

标签:功能,JAVA,String,System,Scanner,字符串,println,out
From: https://www.cnblogs.com/xfbk/p/16989581.html

相关文章

  • 【问题记录】Caused by: java.lang.ClassNotFoundException: org.springframework.boo
    1 报错现象2022-12-2008:53:48:371[restartedMain]INFOorg.springframework.boot.devtools.env.DevToolsPropertyDefaultsPostProcessor.logTo(DevToolsPropertyD......
  • java的饿汉和懒汉设计模式
    本文主要讲述java的饿汉和懒汉设计模式饿汉和懒汉设计模式的目的:使得该类的对象,只能有一个,不允许其他类,创建该类的对象。饿汉设计模式示例代码如下:1publiccl......
  • 前后分离 laravel对接验证码功能
    2022年12月19日16:30:52因为最近在做等保三级,之前接口只做了错误5次,就禁止一个小时登录,但是发现还是不好,这次添加验证码功能composerrequiremews/captcha找到config/......
  • StringBuilder和StringBuffer的区别以及衍生题目
    StringBuilder和StringBuffer的区别为什么StringBuffer是线程安全的?StringBuffer在单机环境下线程安全吗?为什么?StringBuffer在多机环境下线程安全吗?为什么?StringBuffer......
  • 【794】Jupiter notebook扩展功能(感叹号,terminal使用)
    参考:增强JupyterNotebook的功能,这里有四个妙招参考:4AwesomeTipsforEnhancingJupyterNotebooksJupyterNotebookshavebeenanawesometoolforalldeveloper......
  • Java实现7种常见密码算法
    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。简介前面在密码学入门一文中讲解了各种常见的密码学概念、算法与运用场景,但没有介绍过代码,因此,为作补充,这......
  • Java Endorsed Standards Override Mechanism
    参考资料https://docs.oracle.com/javase/6/docs/technotes/guides/standards/介绍FromtimetotimeitisnecessarytoupdatetheJavaplatforminordertoinc......
  • 【原创】OllyDBG 入门系列(七)-汇编功能
    作者:CCDebuger<!--google_ad_section_start-->OllyDBG 入门系列(七)-汇编功能作者:CCDebuger今天我们的目标程序是 MyUninstaller 1.34 版。这是一个非常小的程序卸载......
  • 轻松看懂Java字节码
     计算机只认识0和1。这意味着任何语言编写的程序最终都需要经过编译器编译成机器码才能被计算机执行。所以,我们所编写的程序在不同的平台上运行前都要经过重新编译才能被执......
  • Java 如何在日志中优雅的打印 Exception
    一、使用log库打印使用log库如slf4j@Slf4jpublicclassMyDemo{publicvoiddemo(){try{inta=10/0;}catch......