java hasnext_java hasNext()使用实例解析
这篇文章主要介绍了java hasNext()使用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
编写一段程序实现如果输入的一组数中含非整数数字,输出数字相加的和以及"attention"字符,如果全部是数字便输出数字的和。
程序1:
package mian;
import java.util.Scanner;
public class mian {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int s=0;
String str=null;
while(sc.hasNext()){
if(sc.hasNextInt()){//判断是否是数字
s+=sc.nextInt();
}else{
str=sc.next();//不写这句话会导致只会加非数字前数字的和,必须将这个非数字字符串吸收了
}
}
System.out.println(s);
if(str!=null){
System.out.println("attention");
}sc.close();
}
}
程序2:
import java.util.Scanner;
public class Main{
//return -1: -10(带负号)
//return 1: +10(带正号)
//return 0 非数字字符串
//return 2: 10(不带正负号)
public static int checkNum(String str){//判断是否是数字串
if(str.charAt(0)=='-'){
for(int i=1;i
if(str.charAt(i)-'0'>9||str.charAt(i)-'0'<0){
return 0;
}
}return -1;
}else if(str.charAt(0)=='+'){
for(int i=1;i
if(str.charAt(i)-'0'>9||str.charAt(i)-'0'<0){
return 0;
}
}return 1;
}else{
for(int i=0;i
if(str.charAt(i)-'0'>9||str.charAt(i)-'0'<0){
return 0;
}
}return 2;
}
}
public static void main(String []args){
int flag=0,s=0,sum=0;
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
String a=sc.next();
if(checkNum(a) == 1){
for(int i=1;i
s=s*10+a.charAt(i)-'0';
}sum+=s;s=0;
}else if(checkNum(a) == -1){
for(int i=1;i
s=s*10+a.charAt(i)-'0';
}sum+=-s;s=0;
}else if(checkNum(a) == 2){
for(int i=0;i
s=s*10+a.charAt(i)-'0';
}sum+=s;s=0;
}else{
flag=1;
//continue;
}
}
if(flag==0){
System.out.println(sum);
}else{
System.out.println(sum);
System.out.println("attention");
}
sc.close();
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
java hasnext_java hasNext()使用实例解析相关推荐
- List元素互换,List元素转换下标,Java Collections.swap()方法实例解析
Java Collections.swap()方法解析 jdk源码: public static void swap(List<?> list, int i, int j) {// ins ...
- java斗地主代码_实例解析java如何实现斗地主代码
实例解析java如何实现斗地主代码 发布时间:2020-07-20 14:41:41 来源:亿速云 阅读:73 作者:小猪 小编这次要给大家分享的是实例解析java如何实现斗地主代码,文章内容丰富,感 ...
- 什么是java内省_Java内省实例解析
图像中轮廓的个数,里面vector的size代表了轮廓上点的个数.了解JavaBean 内省对应的英文单词为IntroSpector,它主要用于对JavaBean进行操作,JavaBean是一种特殊的 ...
- Java的clone()用法实例解析
1.背景 用java写程序的时候很苦恼的一件事就是,如果将一个对象a赋给另一个对象b,那么你改变a的变量值得时候,b的值也对应的变化.如果我们只想单纯的获取那个时刻的a的状况给b的话,就要用到clon ...
- java 字节 操作_实例解析Java byte数组操纵方式代码
字节数组的关键在于它为存储在该部分内存中的每个8位值提供索引(快速),精确的原始访问,并且您可以对这些字节进行操作以控制每个位. 坏处是计算机只将每个条目视为一个独立的8位数 - 这可能是你的程序正在 ...
- Java 异步回调机制实例解析
2019独角兽企业重金招聘Python工程师标准>>> 一.什么是回调 软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用.回调和异步调用. 回调是一种特殊 ...
- java hasnext_java – hasNext() – 什么时候阻止,为什么?
我正在尝试通过扫描仪对象读取命令.为了检查输入语法,我使用sc.hasNext()(对于缺少命令的情况).它已经很好地适用于许多情况,但现在我已经在 JavaAPI中描述为"可以阻塞并等待输 ...
- 基于java斗地主设计报告_基于java实现斗地主代码实例解析
斗地主 规则: 1. 组装54张扑克牌 2. 将54张牌顺序打乱 3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌. 4. 查看三人各自手中的牌(按照牌的大小排序).底牌 手中扑克 ...
- java斗地主代码_基于java实现斗地主代码实例解析
斗地主 规则: 1. 组装54张扑克牌 2. 将54张牌顺序打乱 3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌. 4. 查看三人各自手中的牌(按照牌的大小排序).底牌 手中扑克 ...
最新文章
- python安装依赖失败_python - pip安装jq依赖关系失败 - SO中文参考 - www.soinside.com
- Android libcutils库中整数溢出导致的堆破坏漏洞的发现与利用
- python人脸_Python 使用 face_recognition 人脸识别
- UVAoj 348 - Optimal Array Multiplication Sequence
- git托管怎么使用_使用Git构建和托管网站
- 未来会有特供iPhone 来针对各国调查法案?
- C语言章节作业第五次,C语言第五次上机作业参考答案
- MySQL及其图形界面navicat的安装
- iso12233测试方法_详解ISO12233 Chart(分辨率测试标板)使用方法
- c语言编程中分数怎么表示,用C语言编程平均分数
- 高中计算机网络技术应用教案,高中信息技术选修3《网络技术应用》教案.doc
- php 木马,PHP后门木马详解
- Beta版本 为什么程序员总是分不清万圣节和圣诞节?因为 Oct 31 == Dec 25。
- Android百度地图显示+抽屉式侧边栏
- MATLAB:randn简介
- gird和flex布局
- 智能家居时代,怎样选择一把你心底里切实需要的智能门锁?
- python爬虫数据寻找过程(解决爬虫异步导致AttributeError: 'NoneType' object has no attribute 'find_all'错误)
- C语言中的%d、%u、%p、%f、%lu...
- Vue3 - props
热门文章
- exe电子书转换txt 下载_网站能经常看到的主流电子书格式
- 计算机组成 结构 华南理工,计算机组成原理-2019春华工网络教育随堂练习
- integer超出范围_BigInteger:可以让超过Integer范围内的数据进行运算
- 广义典型相关分析_数学建模/机器学习:广义加性模型(GAM)及其Python实现
- HDU 5552 Bus Routes(NTT+分治)
- STL源码剖析(三)
- Templates Algorithms
- MySQL中的主键约束和外键约束
- 来自 119.*.*.*的回复: TTL 传输中过期
- 使用CucumberJS,让JavaScript与行为驱动开发结合