zoukankan      html  css  js  c++  java
  • Scanner类、String类、StringBuffer类

    1、Scanner类

    当程序需要从键盘获取用户输入的命令或数据时,可以通过Scanner类方便地获取用户输入。

    通过Scanner类获取用户输入时,控制台会一直等待用户的输入,直到用户敲回车键结束,把所输入的内容传给Scanner,程序要从Scanner获取输入的内容,则只需要调用Scanner的方法即可。

    ● Scanner类的初始化:

    Scanner  scanner = new  Scanner(System.in);

    声明一个scanner变量,并用new运算符实例化Scanner,实例化Scanner时,需要传入System.in对象,Scanner通过传入的System.in获取用户输入,并对用户输入的字符进行处理,屏蔽了获取用户输入的复杂操作。

    ● 示例:从键盘获取用户的输入

     1 public class ScannerDemo {
     2     public static void main(String[] args) {
     3         int num = Su.getNum();
     4         System.out.println("输出结果:" + num);
     5     }
     6     
     7 }
     8 
     9 class Su{
    10     private static Scanner sc = null;
    11     private Su(){
    12         
    13     }
    14     static{
    15         sc = new Scanner(System.in);
    16     }
    17     public static int getNum(){
    18         int i = 0;
    19         while(true){
    20             System.out.println("请输入一个数字:");
    21             if(sc.hasNextInt()){
    22                 i = sc.nextInt();
    23                 break;
    24             }else{
    25                 sc = new Scanner(System.in);//为了阻塞住程序
    26                 System.out.println("你输入的不正确,请重新输入");
    27             }
    28         }
    29         return i;
    30     }
    31     
    32 }

    2、String 类

    ● String 类内存图解:

    String s = new String("hello");创建了几个对象?
    创建了两个对象,一个在常量池,一个在堆内存。

    3、StringBuffer 类

    StringBuffer 的 capacity()方法会自动扩充容量,默认16

    ● 示例:实现字符串的反转(通过 StringBuffer 和 String 相互转换)

     1     public static void main(String[] args) {
     2         String s = "abcdefg";
     3         StringBuffer sb = new StringBuffer(s);
     4         System.out.println(sb);
     5         StringBuffer sbr = sb.reverse();
     6         String string = sbr.toString();
     7         char[] charArray = string.toCharArray();
     8         for(char c : charArray){
     9             System.out.print(c);
    10         }
    11     }

    ● 结果:abcdefg

          gfedcba

  • 相关阅读:
    左偏树
    论在Windows下远程连接Ubuntu
    ZOJ 3711 Give Me Your Hand
    SGU 495. Kids and Prizes
    POJ 2151 Check the difficulty of problems
    CodeForces 148D. Bag of mice
    HDU 3631 Shortest Path
    HDU 1869 六度分离
    HDU 2544 最短路
    HDU 3584 Cube
  • 原文地址:https://www.cnblogs.com/fanyizhan/p/10022093.html
Copyright © 2011-2022 走看看