精华内容
下载资源
问答
  • 今天小编就为大家分享一篇Java读取一行空格隔开的数字字符串并求出这些数字的和方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • JAVA-输出一个三角形(详解)

    千次阅读 2020-10-29 14:11:17
    public class Demo { /* 注意:编程时不可以使用汉语和拼音,要用英文单词或者英文单词缩写 如图,想要输出一个四行的三角形: 第1行 * 第2行 *** 第3行 ***** 第4行 ******* 思路.
    
    public class Demo {
        /*
        注意:编程时不可以使用汉语和拼音,要用英文单词或者英文单词缩写
        如图,想要输出一个四行的三角形:
                                第1行      *
                                第2行     ***
                                第3行    *****
                                第4行   *******
    
          思路:
                1.将这个图形看成四个直角三角形
                2.需要两层for循环,第一层的作用是当前行数
                                第二层的作用是输出当前行需要的*号
         */
    
    
        public static void main(String[] args) {
    
            //需要四行,所以循环四次
            for (int i = 1; i <= 4; i++) {
                System.out.print("第" + i + "行  ");
    
                //1.输出第一个直角三角形
                //规则:行数的倒序,输出相同数量的*
                //也就是一共四行,那么第一行就输出 4个,第二行输出3个,第三行输出2个,第四行输出1个
                for (int j = 4; j >= i; j--) {
                    System.out.print(" ");
                }
    
                //2.输出第二个直角三角形
                //规则:每行输出,与当前行数相同数量的 *
                //
                for (int j = 1; j <= i; j++) {
                    System.out.print("*");
                }
    
                //3.输出第三个直角三角形
                //规则:每行输出,当前行数减1数量的 *
                //
                for (int j = 1; j < i; j++) {
                    System.out.print("*");
                }
    
                //第四个不用输出
    
    
                //换行
                System.out.println();
            }
        }
    
    }
    
    



    搞 定 撒 花 ❀❀❀❀❀❀❀❀❀❀❀❀

    展开全文
  • Java输入输出

    万次阅读 多人点赞 2018-05-12 15:27:45
    引言:在平时java开发中,被输入输出搞得头疼。特此写下这篇博客,一是为了总结输入输出,二是为了和大家分享。如果大家觉得写得好,就请高抬贵手点个赞呗!!! 1.输入格式,输出格式控制 1.1输入处理 java的...

    源代码见:点击打开链接

    引言:在平时java开发中,被输入输出搞得头疼。特此写下这篇博客,一是为了总结输入输出,二是为了和大家分享。如果大家觉得写得好,就请高抬贵手点个赞呗!!!

    1.输入格式,输出格式控制

    1.1输入处理

        java的输入,我们用到Scanner类,可以用它创建一个对象

        Scanner reader=new Scanner(System.in);

        然后reader对象调用nextBoolean(),nextByte(),nextShort(),nextInt(),nextLong(),nextFloat(),nextDouble()方法来从输入流中获取数据。这些方法在执行时都会阻塞,程序等待用户在输入流中输入enter键(\n)时继续执行。这里的nextInt,hasNextInt()这些方法的调用,会判断当前字节流里面是否有东西,没有就阻塞等待输入直到用户按enter键(\n)结束输入,在Scanner类中有一个变量needInput,当需要读取数据时,needInput=true(也就是调用nextInt,hasNextInt()这些函数的时候)。有一个readInput方法,当字节流中有东西可读时,让needInput=false(表示不需要阻塞等待输入);下面是Scanner.class源码:

     // Tries to read more input. May block.
        private void readInput() {
            if (buf.limit() == buf.capacity())
                makeSpace();
    
            // Prepare to receive data
            int p = buf.position();
            buf.position(buf.limit());
            buf.limit(buf.capacity());
    
            int n = 0;
            try {
                n = source.read(buf);//这儿
            } catch (IOException ioe) {
                lastException = ioe;
                n = -1;//这儿
            }
    
            if (n == -1) {
                sourceClosed = true;
                needInput = false;//这儿
            }
    
            if (n > 0)
                needInput = false;/这儿
    
            // Restore current position and limit for reading
            buf.limit(buf.position());
            buf.position(p);
        }
    

        总之,在调用next(),hasNext()方法时,字节流里面有东西,就不用等待,没有东西就阻塞等待。例如:

    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		Scanner s=new Scanner(System.in);
    		int a,b;
    		a=s.nextInt();
    		System.out.println(a);
    		b=s.nextInt();
    		System.out.println(b);
    		/*a=s.nextInt();
    		b=s.nextInt();
    		System.out.println(a+"  "+b);*/
    	}

        当在命令行时输入时,我可以这样输入(在一行就输入两个数据再按enter),当运行到b=s.nextInt()时,发现字节流里面有东西,就没有阻塞等待输入了。

        当然我们也可以这样输入(第一行输入2后,按enter键,然后在输入3,再按enter键)。运行过程是这样的,首先,当运行到a=s.nextInput()时发现,字节流里面没东西,等待输入,于是我们在命令行的第一行输入了2,按回车确认,这时程序继续执行。当运行到b=s.nextInt()时,发现字节流里面没东西,则阻塞等待输入,于是我们在命令行第三行输入3,按enter键确认,程序继续执行。

        Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配(当然可以自定义分隔符)。

         在下面1.3中我们举一个输入控制实例来熟练输入控制的使用。

     

    1.2 hasNext源码解析

    首先我们分输入源是System.in(也就是控制台),和从文件中读取(FileInputStream)。

    (1)对于System.in,不管如何都是要返回true的。我们看源码:

            /*这是测试代码*/
            Scanner scanner=new Scanner(System.in);
    
    
            while (scanner.hasNext()){
                System.out.println(scanner.next());
            }

     我们进入hasNext()函数

    
    public boolean hasNext() {
            ensureOpen();
            saveState();
            while (!sourceClosed) {
                /*看buffer里面是否有东西,有就返回ture*/
                if (hasTokenInBuffer())
                    return revertState(true);
                
                /*没有就从System.in中读入数据。该方法可能会阻塞*/
                readInput();
            }
            
            /*对于从控制台中读入数据,这两句代码是永远不会被执行的。相当于从控制台读入数据永远不会结束,sourceClosed永远为false*/
            boolean result = hasTokenInBuffer();
            return revertState(result);
    }

    (2) 从文件中读取(FileInputStream)

     Scanner scanner1=new Scanner(new FileInputStream("/home/fengli/a.txt"));
    
     while (scanner1.hasNext()){
           System.out.println(scanner1.next());
     }

     在进入hasNext()方法:

    public boolean hasNext() {
            ensureOpen();
            saveState();
            while (!sourceClosed) {
                /*看buffer里面是否有东西,有就返回ture*/
                if (hasTokenInBuffer())
                    return revertState(true);
                
                /*没有就从System.in中读入数据。该方法可能会阻塞*/
                readInput();
            }
            
            /*用文件中读取,sourceClosed就可能为ture。所以这个方法就可以返回false*/
            boolean result = hasTokenInBuffer();
            return revertState(result);
    }

     

    1.3 输出处理

        可用System.out.println()或System.out.print()来向屏幕进行输出。jdk1.5新增了和C语言中printf函数类似的数据输出方法,

    System.out.printf(“格式控制部分”,表达式1,表达式2,……,表达式n)

        格式控制部分由格式控制符号:%d,%c,%f,%s和普通字符组成,普通字符原样输出。格式控制符用来输出表达式的值。

        %d:输出int类型数据值

        %c:输出char类型数据

        %f:输出浮点型数据,小数点部分最多保留6位

        %s:输出字符串数据

        %md:输出int型数据占m列

        %m.nf:输出的浮点型数据占m列,小数点保留n位

    格式字符串语法:

        每个格式控制以%开始,以空格或标点符号结尾。

        

     

    1.3输入输出实例--读入指定形状,输出指定形状

        实例为输出九九乘法表,源码如下:

    public class Main {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		for(int i=1;i<=9;i++)
    		{
    			for(int j=1;j<=i;j++)
    			{
    				System.out.printf("%2d X%2d=%3d ",j,i,i*j);
    			}
    			System.out.println();
    		}
    	}
    }

        运行结果:

    2.从文件输入,输出

    2.1实现方法

        可通过重定向标准输入输出流的方法来实现从文件中输入输出数据。具体使用到的方法如下:

        

    static void setIn(InputStream in)//重定向标准输入
    static void setOut(PrintStream out) //重定向标准输出

       

    2.2从文件输入输出实例--拷贝

        通过重定向的方法,实现从一个文件拷贝东西到另外一个文件。

        代码如下:

    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.PrintStream;
    import java.util.Scanner;
    
    public class Main {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		/*
    		 * FileInputStream里面的路径可以写绝对路径又可以写相对路径,为了程序的移植性,推荐使用相对路径,相对路径
    		 * 的根路径是Copy
    		 */
    		FileInputStream fis = null;
    		PrintStream fos=null;
    		try {
    			fis = new FileInputStream("src/source");
    			fos=new PrintStream("src/dest");
    		} catch (FileNotFoundException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		System.setIn(fis);//重定向标准输入
    		
    		//接下来就和从标准输入流读入数据一样了
    		Scanner sc = new Scanner(System.in);
    		String s=sc.nextLine();
    		System.out.println(s);
    		
    		//重定向输出流
    		System.setOut(fos);
    		
    		//接下来就和从标准输出流读入数据一样了
    		System.out.println(s);
    	}
    
    }
    

     

     

     

     

     

     

     

     

     

    展开全文
  • java写一些算法题目的时候需要输入一些数据,像C或者CPP都可以有专用的输入函数进行输入,在Java里需要稍微麻烦一些,具体代码如下: import java.util.Scanner; public class Main{ public static void main...

    用java写一些算法题目的时候需要输入一些数据,像C或者CPP都可以有专用的输入函数进行输入,在Java里需要稍微麻烦一些,具体代码如下:

    import java.util.Scanner;
    
    public class Main{
        public static void main(String[] args){
            Scanner in = new Scanner(System.in);
            String s =in.nextLine();
            String[] str = s.spilt(" ");
            for(String data : str)
                System.out.println(data);
        
    }

     

    展开全文
  • Java中格式化输出

    千次阅读 2019-03-16 15:24:04
    概要格式化控制台输出要点提示:常用的格式标识符格式标识符的解释指定宽度和精度的例子格式化输出语法注意的问题应用 格式化控制台输出 要点提示: 在控制台上显示格式化输出:System.out.printf方法 常用的格式标识符...


    一、要点提示

    在控制台上显示格式化输出:System.out.printf方法


    二、常用的格式标识符

    在这里插入图片描述
    (图片来源: java核心技术卷1(第九版))


    三、格式标识符的解释

    % 4 . 2 f

    4为域宽度.输出的浮点数条目宽度至少为4,包括小数点和小数点后两位数字.这样,给小数点前分配了1位数字.
    如果该条目小数点前的位数小于1,就在数字前面加空格.
    如果该条目小数点前的位数大于7,则自动增加宽度.

    2为精度().即想要输出的小数点的长度.

    f为转换码


    四、指定宽度和精度的例子

    举例输出
    %5c输出字符并在这个字符条目前面加4个空格
    %6b输出布尔值,在false值前加一个空格,在true值前加两个空格
    %5d输出整个条目,宽度至少为5.如果该条目的数字位数小于5,就在数字前面加空格.如果该条目的位数大于5,则自动增加宽度
    %10.2f输出的浮点条目宽度至少为10,包括小数点、和小数点后两位数字.这样,给小数点前分配了7位数字. 如果该条目小数点前的位数小于7,就在数字前面加空格. 如果该条目小数点前的位数大于7,则自动增加宽度.
    %10.2e输出的浮点条目的宽度至少为10,包括小数点、小数点后面两位数字和指数部分.如果按科学计数法显示的数字位数小于10,就给数字前加空格
    %12s输出的字符串至少为12个字符.如果该字符串条目小于12个字符,就在该字符串前加空格.如果该字符串条目多余12个字符,则自动增加宽度

    五、格式化输出语法

    System.out.printf(format,item1,item2,…,itemk)
    这里的format是指一个由子串和格式标识符构成的字符串.


    六、注意的问题

    1.默认情况下,输出是右对齐的.可以在格式标识符中放一个符号(-),表明该条目在特定区域中的输出是左对齐的.
    2.使用符号%来标记格式标识符,要在格式字符串里输出直接量%,需要使用%%


    七、应用

    public class PrintfDemo {
    	public static void main(String[] args) {
    		System.out.printf("%5.6f",12345678.12345678);
    		System.out.println();
    		System.out.printf("%8.4f",1.12);
    		System.out.println();
    		System.out.printf("%-8.4f",1.12);
    	}
    }
    /*输出:
    12345678.123457
      1.1200
    1.1200  
    */
    
    
    展开全文
  • Java输出直角三角形方法

    万次阅读 2018-10-30 20:42:39
    直接传入参数即可: public static void Triangle(int num) { for (int i = 1; i < num; i++) { for (int j = i; j < num; j++) { System.out.print(" "); } for (int j = 1;...
  • Java的常用输入输出语句

    万次阅读 多人点赞 2018-04-14 19:03:38
    一、概述 输入输出可以说是计算机的基本功能。作为一种语言体系,java中主要按照流(stream)...Java语言体系中,对数据流的主要操作都封装在java.io包中,通过java.io包中的类可以实现计算机对数据的输入、输出操作...
  • 看到可以将输入的用String来接收,之后用空格隔开,放入一数组number中。 ps:不要小瞧那些看起来不起眼的方法,还是记住一些吧。 Scanner in = new Scanner(System.in); String stri...
  • Java输入按空格分开(单个或多个)

    万次阅读 2018-12-29 16:40:33
    其中,字符串中的的空白分别为:单个空格,多个空格,tab制表符。 二、使用一个或多个空格分割字符串 正确代码如下: String [] arr = str.split("\\s+"); for(String ss : arr){  System.out....
  • 下面小编就为大家带来一篇JAVA基础之控制台输入输出的实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 主要介绍了Java String字符串补0或空格的实现代码,代码简单易懂,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
  • 1.正方形要求:输出 代码:for (int i = 0; i ; i++) {//行数 for (int j = 0; j ; j++) {//*号个数 System.out.print("*"); } System.out.println();//换行 }
  •  :它叫不换行空格,全称No-Break Space,它是最常见和我们使用最多的空格,大多数的人可能只接触了 ,它是按下space键产生的空格。在HTML中,如果你用空格键产生此空格空格是不会累加的(只算1个)。要...
  • java输出直角三角形

    千次阅读 2019-04-16 12:50:38
    public class Demo { public static void main (String args[]){ System.out.println("输入三角形行数:"); Scanner s= new Scanner(System.in); int n= s.nextInt(); for (int a = 0 ;...
  • Java利用星号(*)和空格实现正方形,长方形,三角形,平行四边形,菱形,空心菱形。 利用for循环嵌套对星号和空格进行组合排列,构成不同形状的图形。 正方形 for (int i = 0; i < 10; i++) { for (int j = 0...
  • JAVA编程输出*的图案

    千次阅读 2019-04-17 20:07:40
    public class ZfylianxiTest { public static void main(String[] args) { int a=5;//输出不同大小的结果 ...//输出空格 for(int j=1;j<=5-i;j++) { System.out.print(" “); } //输出号 for(int k=1;k<...
  • 多个关键字请用空格分隔,最多填写5个。点击右侧Tag快速添加
  • /* * %6.3f: 6:总长度,3表示小数位,f:单精度 总长度=小数点+小数位+整数位 * %m.nf:输出共占m列,其中有n位小数,如数值宽度小于m左端补空格。 */
  • /*本题的思路就是,当我有一个字符串,我需要一个一个字符的处理,当下一个字符是个空格的时候,我就知道前面已 经构成了一个完整的字,把它输出出来就好了。如果发现下一个字符不是一个空格的话,我就把这个字符,加...
  • Java的简单输入输出问题

    千次阅读 2017-10-18 10:57:16
    最近正在学Java,了解了一些Java的输入输出的基本语法。。。1.在Java中如何输入以空格隔开的数字呢? 由于一开始输入的数据都是被当成字符串来处理的,所以我们就相当于处理一个字符串,来获得所需要的数据。 ...
  • java 利用*号打印三角形

    千次阅读 2016-02-27 02:59:25
    为了简单起见,可以认为每个*号后面都有一个空格,这样第一行就只有一个*号+“ ”,第二行则有两个*号+“ ”,以此类推 3.为了特定形状,每行第一个*号之前都有特定数量的“ ”,以上图为例第一行*号之前有4个“ ...
  • java输入数字输出菱形

    千次阅读 2019-07-20 15:49:10
    java输入数字输出菱形 1、要求 用两个for循环输出一个菱形。 2、代码 import java.util.Scanner; /** * java输入数字输出菱形 * @author com * */ public class Test { static Scanner sc = new Sca.....
  • java去除空格的几种方式

    千次阅读 2019-07-04 08:59:09
    java中,我们常用的就是replace、replaceAll这两个替换的方式,通过直接输入“ ”或者“\s”来代表空格,默认是清除所有一样的空格,还有的表示方式是“ +”,除此之外,还可以使用substring来进行处理,因为其中...
  • 今天小编就为大家分享一篇java实现读取txt文件并以在每行以空格取数据,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • Java简单代码-用*号拼三角形

    千次阅读 2018-06-26 20:53:15
    最近整理以前的代码发现这个星星组成三角形的代码,让强迫症的自己困惑过,一定要工工整整的三角形!!! public class Triangle { ...//左边一个空格,右边两个空格 } System.out.println(); } } } 结果:
  • 输入一行2个小写字母,每个字母用一个空格隔开 输出 输出一行显示2个对应的大写字母 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner xh=new Scanner(Sys...
  • 目标: 从控制台输入一行字符串 去除字符串中的所有空格 .../*导入包,如果不导入要使用java.util.Scanner输出*/ public class StringUtil { public static void main(String[] args) { Scann...
  • java输出心形

    千次阅读 2019-07-27 23:32:34
    心形 ... * 心形输出 */ public class Heart { public static void main(String[] args) { //分三个大部分 上中下 for(int i=0,k=0; i<14;i++){//打印行 //上部分 上分为 四个部分 if...
  • 7-6作品评分(10分) 全国中小学生Scratch作品大赛拉开了序幕。每个参赛选手可以通过网络直接上传作品。本次比赛人人可做评委。每个网络评委可以通过... 第二行是n个评委的打分,分数之间有一个空格。打分是可以带有...
  • java 输出空心三角形

    千次阅读 2018-09-13 13:48:49
    import java.util.Scanner; public class Triangle {  public static void main(String[] args) {  Scanner s=new Scanner(System.in);  System.out.println("请输入一个整数;");  ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 192,254
精华内容 76,901
关键字:

java输出空格

java 订阅