java(渣哇)------输入与输出语句(详解) (๑•̌.•๑)

目录

一.java的输出语句:

System.out.println()  -----输出并换行

System.out.print()  -----输出但不换行

System.out.printf()  -----类似C语言的printf()输出语句,按格式进行输出

二.java的输入语句:

 2.1-----Scanner的基础用法:

 2.2-----String类型next()、nextLine()、hasNext(),hasNextLine()

2.3-----int类型nextInt()、nextInt(int radix)、hasNextInt()

 2.4-----浮点数 double 类型输入

2.5----- boolean 布尔类型输入


对于初识java的小伙伴,时常为输入和输出语句所困扰,对于next()、nextLine()、hasNext()、hasNextLine()、nextInt()、hasNextInt() 等类的使用方法很是头疼。这篇博客将作出详细解释,尽可能的帮助大家扫除障碍,那么废话不多说,我们直接开始吧~

一.java的输出语句:

java常用的输出语句有三种:

  • System.out.println()  -----输出并换行

示例: 

public class JavaPrint {
    public static void main(String[] args) {
        System.out.println("Hello");//输出Hello并换行
        System.out.println("World");//输出World并换行
    }
}

输出: 

  • System.out.print()  -----输出但不换行

示例:

public class JavaPrint {
    public static void main(String[] args) {
        System.out.print("Hello");//输出Hello不换行
        System.out.print("World");//输出World不换行
    }
}

 输出:

  • System.out.printf()  -----类似C语言的printf()输出语句,按格式进行输出

 输出格式详情:

//%表示进行格式化输出,%之后的内容为格式的定义
格式控制符			说明
--------------------------------------------------
	%d			输出int型数据
	%c			输出char型数据
	%f			输出浮点型数据,小数部分最多保留6位
	%s			输出字符串数据
	%md			输出的int型数据占m列
	%m.nf		输出的浮点型数据占m列,小数点保留n位

示例: 

public class JavaPrint {
    public static void main(String[] args) {
       int a=1;
       int b=2;
       double c=3.1415926;//变量的赋值与初始化
       System.out.printf("%5d %5d %7.2f",a,b,c);//对数据按格式输出
    }
}

输出: 这里由于其他的输出格式类似,就不再赘述了 

二.java的输入语句:

键盘输入代码的四个步骤:
1、导包:import java.util.Scanner;
2、创建Scanner类型的对象:Scanner scanner= new Scanner( System.in) ;
3、调用Scanner类的相关方法(next() / nextXxx()) ,来获取指定类型的变量
4、释放资源:调用Scanner对象的close()方法, scanner.close();

 2.1-----Scanner的基础用法:

//1.导包
import java.util.Scanner;

public class JavaSanner {
    public static void main(String[] args) {
        //2.创建Scanner类型的对象
        Scanner sc=new Scanner(System.in);
        //输出提示信息
        System.out.print("请输入:");
        //3、调用Scanner类的相关方法(`next() / nextXxx()`) ,来获取指定类型的变量
        int a=sc.nextInt();
        System.out.print("输入的数据为:"+a);
        //4、释放资源:调用Scanner对象的close()方法,-> `scanner.close();`
        sc.close();
    }
}

输出:

 2.2-----String类型next()、nextLine()、hasNext(),hasNextLine()

  • String类型的next()与nextLine():

(1)这两个方法都是属于String类型的方法,都可以用来获取在控制台输入的字符串。

(2)next()方法获取的是没有被空格、换行、回车符隔断的连续字符串。

(3)nextLine()方法获取的是在回车符之前,所输入的一整行字符串,回车符作为分割点,空格、换行符没有影响。

示例1:

//1.导包
import java.util.Scanner;

public class JavaSanner {
    public static void main(String[] args) {

        //创建Scanner类型的对象
        Scanner scanner = new Scanner(System.in);
        //输出提示信息
        System.out.print("请输入一个没有空格的字符串:");
        String string1 = scanner.next();//输入字符串
        System.out.println("输入一个没有空格的字符串后,得到的结果:" + string1);

        System.out.println("");//打印换行
        System.out.println("===================分隔线========================");
        System.out.println("");//打印换行

        System.out.print("请输入一个有空格的字符串:");
        String string2 = scanner.next();
        System.out.println("输入一个有空格的字符串后,得到的结果:" + string2);

        scanner.close();
    }
}

                                                                    输出:

  由于有空格键,这里的Hello World被隔断,所以只输出了Hello

示例2:

//1.导包
import java.util.Scanner;

public class JavaSanner {
    public static void main(String[] args) {

        //创建Scanner类型的对象
        Scanner scanner = new Scanner(System.in);
        //输出提示信息
        System.out.print("请输入一个没有空格的字符串:");
        String string1 = scanner.nextLine();//输入字符串
        System.out.println("输入一个没有空格的字符串后,得到的结果:" + string1);

        System.out.println("");//打印换行
        System.out.println("===================分隔线========================");
        System.out.println("");//打印换行

        System.out.print("请输入一个有空格的字符串:");
        String string2 = scanner.nextLine();
        System.out.println("输入一个有空格的字符串后,得到的结果:" + string2);

        scanner.close();
    }
}

输出:

而nextLine()不受除了回车键以外的 空格,换行符影响

  • String类型的hasNext()与hasNextLine() :

这两个方法对于输入流的检测存在差异:

  1. hasNext()方法以检测接下来是否还有非空字符为主,如果有则返回true,否则false
  2. hasNextLine()方法,从名字可以推测,是以行的方式去判断的,即判断接下来是否还有一行(\n空行也被当作一行),如果有则返回true,反之返回false

 示例1:

import java.util.Scanner;

public class JavaSanner {
    public static void main(String[] args) {


        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入:");//输入提示信息
        while(scanner.hasNext()){  //判断是否有非空字符
            String string1=scanner.next();//输入
            System.out.println("这个字符串是:"+string1);
        }

        scanner.close();
    }
}

 输出:

 注意这里是一行一行的进行输出

示例2:

import java.util.Scanner;

public class JavaSanner {
    public static void main(String[] args) {


        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入:");
        while(scanner.hasNextLine()){//判断是否为字符串,并包括空格在内
            String string1=scanner.nextLine();//输入
            System.out.println("这个字符串是:"+string1);
        }

        scanner.close();
    }
}

输出:

这里则是按行输出,通常情况下,最好是hasNext()next()方法搭配使用,hasNextLine()nextLine()方法搭配使用 

2.3-----int类型nextInt()、nextInt(int radix)、hasNextInt()

 (1)nextInt()方法:获取一个从控制台输入的整数。如果输入的数字不是int型,会报错;如果数字之间被空格隔开,此时与next()方法类似,会获取第一个空格之前的数字。

示例:

import java.util.Scanner;

public class JavaSanner {
    public static void main(String[] args) {


        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入一个数字:");
        int n=scanner.nextInt();//输入数字
        System.out.println("这个数字是:"+n);//打印与数字相关的信息

        scanner.close();
    }
}

输出:

 如果输入的不是数字,会报错:

(2)nextInt(int radix)方法:括号中的int radix代表的是读入数字的进制,比如2进制、8进制、10进制、16进制,代表进制的选择,如果为空,默认是10进制。方法执行完成后,读入的数字会转换成10进制的数字进行返回。 

 示例:

import java.util.Scanner;

public class JavaSanner {
    public static void main(String[] args) {


        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入一个数字:");
        int n=scanner.nextInt(2);//输入一个二进制数字
        System.out.println("这个数字是:"+n);//打印时会转化为十进制

        scanner.close();
    }
}

输出:

二进制101 转十进制  ----》1*2^0+0*2^1+1*2^2=5 

 (3) hasNextInt()方法会先对输入的数据进行数据类型判断,如果得到的是int类型,则返回true给到aa,否则返回false。

示例:

import java.util.Scanner;

public class JavaSanner {

        public static void main(String[] args) {


            Scanner scanner = new Scanner(System.in);
            System.out.print("请输入一个数字:");
           boolean a=scanner.hasNextInt();//用返回的值判断读入的是否是数字
           if(a){
               System.out.println("输入正确!");//如果返回值是true,则输入的是数字
           }
           else{
               System.out.println("输入错误!");//如果返回值是false,则输入的不是数字
           }
        }
    }

 输出:

 2.4-----浮点数 double 类型输入

与int基本类似,这里就不做过多说明,代码解释:

import java.util.Scanner;

public class JavaSanner {

    public static void main(String[] args) {
        //2、定义一个Scanner对象
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入小数或整数:");//输出提示信息
        //3、调用Scanner类的相关方法nextDouble方式接收小数数据
        if (scanner.hasNextDouble()) {
            // 判断输入的是否是小数数据
            double a = scanner.nextDouble();
            // 接收小数
            System.out.println("接收小数数据:" + a);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是小数数据!");
        }
        //4、释放资源:调用Scanner对象的close()方法, `scanner.close();`
        scanner.close();
    }
}

输出:

2.5----- boolean 布尔类型输入

代码解释:

import java.util.Scanner;

public class JavaSanner {

    public static void main(String[] args) {
        //2、定义一个Scanner对象
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入布尔值:" );//输出提示信息
        //3、调用Scanner类的相关方法nextBoolean方式接收布尔数据
        if (scanner.hasNextBoolean()) {
            // 判断输入的是否是布尔数据
            boolean a = scanner.nextBoolean();
            // 接收布尔数据
            System.out.println("接收布尔数据:" + a);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是布尔数据!");
        }
        //4、释放资源:调用Scanner对象的close()方法, `scanner.close();`
        scanner.close();
    }
}

输出:

 博客到这里也是结束了,制作不易,喜欢的小伙伴可以点赞加关注支持下博主,这对我真的很重要~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/342063.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JadxGUI反编译工具

安卓应用获取App特征信息指导 包名、公钥和签名MD5获取方式有多种,本文以使用JadxGUI工具获取为例。 下载地址: https://download.csdn.net/download/guodashen007/88772567 下载JadxGUI工具:下载安装完成后,使用此工具打开apk包…

聪明购物秘籍:如何规避Shopee账号关联封号风险

在Shopee平台上,规定一个买家只能拥有一个买家号,同时在一台电脑或者一个手机上登录多个买家号可能导致关联封号的风险。为了规避这一风险,许多购物达人正在寻找方法来防止账号关联。下面是一些使用大量Shopee买家号的技巧,帮助您…

决策树的基本构建流程

决策树的基本构建流程 决策树的本质是挖掘有效的分类规则,然后以树的形式呈现。 这里有两个重点: 有效的分类规则;树的形式。 有效的分类规则:叶子节点纯度越高越好,就像我们分红豆和黄豆一样,我们当然…

增速下滑?毫米波雷达的「烦恼」

编者按:传统3D雷达不赚钱,4D雷达还处于市场导入初期,对于不同角色的供应商来说,当下最难的是如何熬过这段艰难时期。 2023年底,蔚来旗舰车型ET9正式亮相,首次导入4D毫米波成像雷达。这款产品由蔚来资本投资…

GLM-4多模态重磅更新!摸着OpenAI过河!

智谱CEO张鹏说:OpenAI摸着石头过河,我们摸着OpenAI过河。 摸来摸去摸了一年,以每3-4个月升级一次基座模型的速度,智谱摸着OpenAI过河的最新成绩到底怎么样?真如所说吗? 听到GLM-4发布的当天,我就…

Android14实战:调整A2DP音量曲线(五十三)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只…

Rust采集天气预报信息并实时更新数据

目录 一、引言 二、系统设计 三、系统实现 四、案例分析 五、结论 一、引言 随着互联网技术的发展,人们对于获取实时的天气预报信息的需求越来越强烈。Rust作为一种高效、安全的编程语言,可以用于开发各种应用,包括天气预报采集系统。本…

Unity中URP下的 额外灯 逐像素光 和 逐顶点光

文章目录 前言一、额外灯 的 逐像素灯 和 逐顶点灯1、存在额外灯的逐像素灯2、存在额外灯的逐顶点灯 二、测试这两个宏的作用1、额外灯的逐像素灯2、额外灯的逐顶点灯 前言 在之前的文章中,我们了解了 主光相关的反射计算。 Unity中URP下的SimpleLit的 Lambert漫反…

图解CART分类树评估器的参数

图解CART分类树评估器的参数

微信小程序从入门到进阶(二)

数据请求 wx.request发起网络请求&#xff0c;请求的方式主要分为两种&#xff1a; get 请求 post 请求 // get请求 // html <view><button type"primary" bindtap"onGetClick">发起 get 请求</button> </view> // js // inde…

解决报错:javax.net.ssl.SSLHandshakeException: No appropriate protocol

目录 一、场景二、报错信息三、原因四、排查五、解决 一、场景 使用对象存储进行文件上传时报错 注&#xff1a;该问题只要需要用到http的都有可能出现&#xff0c;不是只针对对象存储 二、报错信息 com.hitachivantara.hcp.common.ex.InvalidResponseException: com.hitach…

47. 全排列 II - 力扣(LeetCode)

题目描述 给定一个可包含重复数字的序列 nums &#xff0c;按任意顺序 返回所有不重复的全排列。 输入示例 nums [1,1,2]输出示例 [[1,1,2], [1,2,1], [2,1,1]]解题思路 解题代码 class Solution {List<List<Integer>> result new ArrayList<>();Deq…

外网ssh远程连接服务器

文章目录 外网ssh远程连接服务器一、前言二、配置流程1. 在服务器上安装[cpolar](https://www.cpolar.com/)客户端2. 查看版本号&#xff0c;有正常显示版本号即为安装成功3. token认证4. 简单穿透测试5. 向系统添加服务6. 启动cpolar服务7. 查看服务状态8. 登录后台&#xff0…

【STM32F103】JDY-31蓝牙模块(USART)

JDY-31 JDY-31蓝牙模块&#xff0c;就是下面这么个小玩意。某宝买大概就七八块&#xff0c;超过十块的不要买。 JDY一共有6根引脚&#xff0c;而我们想要让它工作的话只需要接两根线即可&#xff0c;那就是VCC和GND&#xff0c;给VCC接3.6V~6V的电压&#xff08;推荐是5V&…

Modbus网关BL101 既实现Modbus转MQTT,还能当串口服务器使用

随着工业4.0的迅猛发展&#xff0c;人们深刻认识到在工业生产和生活中&#xff0c;实时、可靠、安全的数据传输至关重要。在此背景下&#xff0c;高性能的工业电力数据传输解决方案——协议转换网关应运而生&#xff0c;广泛应用于工业自动化系统、远程监控和物联网应用应用环境…

【江科大】STM32:定时器中断

文章目录 TIM&#xff08;Timer&#xff09;定时器根据复杂度和应用场景分为了高级定时器、通用定时器、基本定时器三种类型基本定时器通用定数器 高级定时器 时钟&#xff08;时钟电路&#xff09;的作用是什么&#xff1a;设置定时器触发中断普通方法&#xff1a;预分频器时序…

架构篇15:高性能数据库集群-分库分表

文章目录 业务分库分表实现方法小结 上篇我们讲了“读写分离”&#xff0c;读写分离分散了数据库读写操作的压力&#xff0c;但没有分散存储压力&#xff0c;当数据量达到千万甚至上亿条的时候&#xff0c;单台数据库服务器的存储能力会成为系统的瓶颈&#xff0c;主要体现在这…

【pdf技巧】PDF文件设置打印限制

想要限制PDF文件的打印功能&#xff0c;想要限制PDF文件打印清晰度&#xff0c;都可以通过设置限制编辑来达到目的。 打开PDF编辑器&#xff0c;找到设置限制编辑的界面&#xff0c;切换到加密状态&#xff0c;然后我们就看到 有印刷许可。勾选【权限密码】输入一个PDF密码&am…

正则表达式、grep过滤工具、sed基本用法、sed基本操作指令、sed应用案例

1 案例1&#xff1a;使用正则表达式 1.1 问题 本案例要求熟悉正则表达式的编写&#xff0c;完成以下任务&#xff1a; 利用grep或egrep工具练习正则表达式的基本用法 1.2 方案 表&#xff0d;1 基本正则列表 表&#xff0d;2 扩展正则列表 1.3 步骤 实现此案例需要按照如…

aiXcoder自动跳出

在使用vscode时突然提示&#xff1a;需登录aixcoder才可以继续使用&#xff1b;如果不登录&#xff0c;一使用vscode就会自动弹出aixcoder试用界面&#xff1a; 试用&#xff1f;后面可能要收取费用&#xff0c;本着白嫖的宗旨思考&#xff1a;那么怎么恢复原来的版本呢&#x…