zoukankan      html  css  js  c++  java
  • Java的输入和输出

    一、Java的输入

    方法一:从控制台接收一个字符,然后将其打印出来
    import java.io.*;
    public static void main(String [] args) throws IOException{ 
             System.out.print("Enter a Char:"); 
             char i = (char) System.in.read(); 
             System.out.println("your char is :"+i); 
    虽然此方式实现了从键盘获取输入的字符,但是System.out.read()只能针对一个字符的获取,同时,获取进来的变量的类型只能是char,当我们输入一个数字,希望得到的也是一个整型变量的时候,我们还得修改其中的变量类型,这样就显得比较麻烦。

    方法二:从控制台接收一个字符串,然后将其打印出来。 在这个题目中,我们需要用到BufferedReader类和InputStreamReader类
    import java.io.*;
    public static void main(String [] args) throws IOException{ 
               BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
               String str = null; 
               System.out.println("Enter your value:"); 
               str = br.readLine(); 
               System.out.println("your value is :"+str); 
    }
    这样我们就能获取我们输入的字符串。

    方法三:这种方法我认为是最简单,最强大的,就是用Scanner类
    import java.util.Scanner;
    public static void main(String [] args) { 
             Scanner sc = new Scanner(System.in); 
             System.out.println("请输入你的姓名:"); 
             String name = sc.nextLine(); 
             System.out.println("请输入你的年龄:"); 
             int age = sc.nextInt(); 
             System.out.println("请输入你的工资:"); 
             float salary = sc.nextFloat(); 
             System.out.println("你的信息如下:"); 
             System.out.println("姓名:"+name+" "+"年龄:"+age+" "+"工资:"+salary); 
    }
    这段代码已经表明,Scanner类不管是对于字符串还是整型数据或者float类型的变量,只需做一点小小的改变,就能够实现功能!无疑他是最强大的!
     
    注:在java中,next()方法是不接收空格的,在接收到有效数据前,所有的空格或者tab键等输入被忽略,若有有效数据,则遇到这些键退出。nextLine()可以接收空格或者tab键,其输入应该以enter键结束。

    一、Java的输出

    1.    Sys.out.println("Hello Word")       //输出并且换行


    2.    Sys.out.print("Hello Word")       //输出不换行


    3.    Sys.out.printf("姓名:"+%s,name)       //按格式输出
    目前printf支持以下格式: 
              %c        单个字符 
              %d        十进制整数 
              %f        十进制浮点数 
              %o        八进制数 
              %s        字符串 
              %u        无符号十进制数 
              %x        十六进制数 
              %%        输出百分号% 
    下面对组成格式说明的各项加以说明: 
    ①%:表示格式说明的起始符号,不可缺少。 
    ②-:有-表示左对齐输出,如省略表示右对齐输出。 
    ③0:有0表示指定空位填0,如省略表示指定空位不填。 
    ④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。 
    ⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。 
    1 package com.hone.test;
     2 
     3 // "%"表示进行格式化输出, "%"之后的内容为格式的定义。
     4 public class Printf {
     5     public static void main(String[] args) {
     6         double d = 345.678;
     7         String s = "hello World";
     8         int a = 123;
     9         
    10                 //浮点型的输出
    11         System.out.printf("%,d",a);            //格式化输出数据,每三个数据加上一个,
    12         System.out.println();
    13         System.out.printf("%f", d);            // 345.678000
    14         System.out.println();
    15             //"9.2"中的9表示输出的长度,2表示小数点后的位数。  345.678位数不够前面不上空格
    16         System.out.printf("%9.3f", d);    
    17         System.out.println();
    18         System.out.printf("%+9.3f", d);            //"+"表示输出的数带正负号
    19         System.out.println();
    20         System.out.printf("%-9.3f", d);            //"-"表示输出的数左对齐(默认为右对齐)
    21         System.out.println();
    22         System.out.printf("%+-9.3f",d);            //"+-"表示输出的数带正负号且左对齐
    23         System.out.println();
    24         
    25                 //整型的输出
    26         System.out.printf("%d", a);                //"d"表示输出十进制整数。
    27         System.out.println();
    28         System.out.printf("%04d", a);            //规定为4位,不够左边添加0
    29         System.out.println();
    30         System.out.printf("%d%%", a);            //如果想输出百分数,则连续用两个  %%
    31         System.out.println();
    32         System.out.printf("%o", a);                //"o"表示输出八进制整数。
    33         System.out.println();
    34         System.out.printf("%x", a);                //"x"表示输出八进制整数。
    35         
    36         
    37         //字符串的输出
    38         System.out.println();
    39         System.out.printf("%s%n", s);                //输出字符串,其中 %n表示换行
    40         
    41         System.out.printf("输出一个浮点数:%.3f,一个整数:%d,一个字符串:%s",d,a,s);        //输出多个变量
    42         
    43     }
    44 
    45 }
    View Code
     
  • 相关阅读:
    Go语言:如何解决读取不到相对路径配置文件问题
    Go组件学习:如何读取ini配置文件
    PMP学习笔记(一)
    SpringBoot安装与配置
    Homebrew中国镜像安装与配置
    Nginx日志常见时间变量解析
    openresty如何完美替换nginx
    Golang防止多个进程重复执行
    Windows 10 中CPU虚拟化已开启,但是docker无法运行
    彻底理解Python多线程中的setDaemon与join【配有GIF示意】
  • 原文地址:https://www.cnblogs.com/whxutao/p/10050744.html
Copyright © 2011-2022 走看看