zoukankan      html  css  js  c++  java
  • Java控制台输入

      在java控制台程序中的输入不像在C或其他语言那么的简单,因此很多java基础教程并没有介绍。然而它又是很重要的,尤其对于像我们这些由C或C++转java的同学,因此我想对Java的输入语句做一些探讨。当然,作为初学者的我这样做是班门弄斧,而我只是想起到抛砖引玉的作用,希望大家一起讨论,并不惜赐教!
        首先,java.util.Scanner包中的Scanner(中文意思是扫描仪)类,这个类是一个final类继承于object类,从它的类名上就可以看出它有点类似于扫描仪,所以它只能扫描用户输入到屏幕上的信息,这是就需要一个System.in然后再扫描(我是这样认为的)。当然它扫描到的只是字符,但在需要时可以转换成其他类型,它提供了很多此类的方法:String next()、 BigDecimal nextBigDecimal() 、BigInteger nextBigInteger() 、BigInteger nextBigInteger(int radix) 、 boolean nextBoolean() 、byte nextByte() 、 byte nextByte(int radix) 、double nextDouble() 、float nextFloat() 、int nextInt() 、int nextInt(int radix) 、 String nextLine() 、long nextLong() 、long nextLong(int radix) 、short nextShort() 、short nextShort(int radix) 。这些方法都可以得到相应类型的数据。例

    如:
    import java.util.Scanner;
    public class Importtext {
    public static void main(String[] args) {
       Scanner sc = new Scanner(System.in);
          int i = sc.nextInt();
          System.out.println(i);
    }
    }
    这个例子就可以得到一个整型的数据。 
         (关于Scanner的东西还有很多,我看的还不是很清楚只知道一些简单的,更复杂的东西,请高手指点!)
        再有就是这个BufferedReader类,这个类“从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取”(摘自Java帮助文档),因此它需要缓冲区。创建缓冲区的构造方法有两个:BufferedReader(Reader in) 创建一个使用默认大小输入缓冲区的缓冲字符输入流。BufferedReader(Reader in, int sz) 创建一个使用指定大小输入缓冲区的缓冲字符输入流。类似的它读的也是字符串,需要是进行处理,即将字符串转换成整型、浮点型等类型。我见过的类型转换有Integer.parseInt()这个函数,是静态类Integer的一个方法parse的意
    思是解析,这样就很明白了。类似的我还见过Float.parseFloat(),举个例子吧:
    import java.io.*; 
    public class importtext {
    public static void main(String[] args) {
       String st;
       int num;
       float fnum;
       try{ 
        System.out.print("输入:"); 
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); 
        st = br.readLine(); 
        System.out.print("输入一个数:");
        num = Integer.parseInt(br.readLine()); 
        System.out.print("输入一个浮点数:");
        fnum = Float.parseFloat(br.readLine());
        System.out.print("输出:"+st+'/n'); 
        System.out.print("输出:"+num+'/n');
        System.out.print("输出:"+fnum+'/n');
        }catch(IOException e){} 
    }
    }
        还有就是运行加参数这个方法,因为我没有用DOS界面输入命令的方法所以没有用,但是听比较牛的学长说过这个方法就查了一下,也比较新颖吧,拿出来说说,因为Java的主函数是带参数的(我也见过C++的主函数带参数,但是自己搞加参数是不行,不知道为什么,知道的可以指点一下!谢谢),args[]这个字符串数组,它是可以接收数据的。当你编写好程序后,编译成字节码文件后运行时加实参【java 文件名 参数(
    字符串)】,这个就不举例子了。
         这是我学Java时一点小小的总结,肯定有很多的纰漏希望各位能不惜赐教,谢谢大家。

  • 相关阅读:
    CodeForces 639C Bear and Polynomials
    CodeForces 149E Martian Strings exkmp
    CodeForces 85D Sum of Medians Splay | 线段树
    CodeForces 149D Coloring Brackets
    CodeForces 526D Om Nom and Necklace
    CodeForces 875 D High Cry
    CodeForces 1018B The hat
    springMVC工程使用jreloader实现热部署
    ssh方式与服务器建立连接
    Weblogic在Linux下启动特别慢及进入控制台慢的解决方法
  • 原文地址:https://www.cnblogs.com/jackrex/p/3001296.html
Copyright © 2011-2022 走看看