JavaSE-基本程序设计结构(下)
JavaSE-基本程序设计结构(下)
- 1. 输入与输出
- 1.1. 读取和输出
- 1.2. 格式化输出
- 1.3. 文件的输入输出
- 2.控制流程
- 2.1. 条件语句
- 2.2. 循环语句
- 2.2.1. while语句
- 2.2.2. do-while语句
- 2.2.3. for语句
- 2.2.4. switch语句
- 2.3. 中断控制流程语句
- 3.大数
- 4.数组
- 4.1. 声明数组
- 4.2. 访问数组元素
- 4.3. 数组的拷贝
1. 输入与输出
1.1. 读取和输出
输出:将内容输出到控制台窗口
System.out.println("hello world");
读取:
import java.util.Scanner;public class Me {public static void main(String[] args) {//创建一个Scanner对象Scanner scanner = new Scanner(System.in);//读取一行String s = scanner.nextLine();//读取一个单词(以分隔符为界)String next = scanner.next();//读取一个整型数据int i = scanner.nextInt();//读取一个浮点型数据double v = scanner.nextDouble();}
PS:当我们使用的类不是在java.lang包里面的时,需要导入包,如第一句中导入Scanner类。
1.2. 格式化输出
public class Me {public static void main(String[] args) {double d = 23.456;System.out.println(d);System.out.printf("%5.2f",d);}
}
“%5.2f”:其中的2表示保留小数点后两位,5表示总共显示5位(包括小数点),如果不够,在前面补空格。
1.3. 文件的输入输出
FileInputStream:字节流、输入
FileOutputStream:字节流、输出
FileReader :字符流、输入
FileWriter:字符流、输入文本文件用字节流或字符流读写(考虑到中文等因素,优先考虑字符流)
非文本文件只能用字节流读写
- FileInputStream 读取文件:
FileInputStream fis=null;try {//创建字节输入流fis=new FileInputStream("E:\\learnproject\\Iotest\\lib\\src\\main\\java\\com\\Test.txt");//创建一个长度为1024的竹筒byte[] b=new byte[1024];//用于保存的实际字节数int hasRead=0;//使用循环来重复取水的过程while((hasRead=fis.read(b))>0){//取出竹筒中的水滴(字节),将字节数组转换成字符串进行输出System.out.print(new String(b,0,hasRead));}}catch (IOException e){e.printStackTrace();}finally {fis.close();}
- FileOnputStream 写入文件:
FileInputStream fis=null;FileOutputStream fos=null;try {//创建字节输入流fis=new FileInputStream("E:\\learnproject\\Iotest\\lib\\src\\main\\java\\com\\Test.txt");//创建字节输出流fos=new FileOutputStream("E:\\learnproject\\Iotest\\lib\\src\\main\\java\\com\\newTest.txt");byte[] b=new byte[1024];int hasRead=0;//循环从输入流中取出数据while((hasRead=fis.read(b))>0){//每读取一次,即写入文件输入流,读了多少,就写多少。fos.write(b,0,hasRead);}}catch (IOException e){e.printStackTrace();}finally {fis.close();fos.close();}
- FileReader 读取文件:
FileReader fis=null;try {//创建字节输入流fis=new FileReader("E:\\learnproject\\Iotest\\lib\\src\\main\\java\\com\\Test.txt");//创建一个长度为1024的竹筒char[] b=new char[1024];//用于保存的实际字节数int hasRead=0;//使用循环来重复取水的过程while((hasRead=fis.read(b))>0){//取出竹筒中的水滴(字节),将字节数组转换成字符串进行输出System.out.print(new String(b,0,hasRead));}}catch (IOException e){e.printStackTrace();}finally {fis.close();}
2.控制流程
2.1. 条件语句
if(条件){要执行的代码
}
if(条件){要执行的代码
}else if(){要执行的代码
}else{要执行的代码
}
2.2. 循环语句
2.2.1. while语句
while(条件){要执行的代码
}
2.2.2. do-while语句
do{要执行的代码
}while ();
2.2.3. for语句
public class Me {public static void main(String[] args) {int[] ints = {2,5,7,5,4,7,4};for (int i = 0 ;i < ints.length;i++){System.out.print(ints[i]+" ");}}
}
2.2.4. switch语句
public class Me {public static void main(String[] args) {int a = 2+4;switch (a){case 1:System.out.println(1);break;case 2:System.out.println(2);break;case 6:System.out.println("ok");break;default:System.out.println("not thinking");break;}}
}
2.3. 中断控制流程语句
break: 跳出最近一层的循环
continue:跳出最近一层的循环的这次循环
3.大数
如果基本数据类型的整数和浮点数精度不能满足要求时,那么可以使用java中的math包的BigInteger和BigDecimal类。这里以前者为例:
public class Me {public static void main(String[] args) {//通过BigInteger的valueOf这个静态方法创建BigInteger a = BigInteger.valueOf(100);System.out.println(a);//通过闯将BigInter实例化对象,然后通过构造器创建BigInteger big = new BigInteger("12345678987654321");System.out.println(big);//大数运算不能使用加减乘除等运算符,而是应该如下:BigInteger bb = BigInteger.valueOf(2);BigInteger bb1 = BigInteger.valueOf(4);//加法BigInteger cc = bb.add(bb1);System.out.println(cc);//乘法BigInteger kk = bb.multiply(bb1);System.out.println(kk);//减法BigInteger jj = bb.subtract(bb1);System.out.println(jj);//除法BigInteger ccc = bb.divide(bb1);System.out.println(ccc);//余数BigInteger ys = bb.mod(bb1);System.out.println(ys);}
}
4.数组
4.1. 声明数组
创建数组的三种方式
int[] a;
int[] b = new int[10];
int[] c = {1,4,7,2};
4.2. 访问数组元素
public class Me {public static void main(String[] args) {int[] aa = {2,4,6,7,8};//1.遍历数组方式一for (int a :aa){System.out.println(a);}//2.遍历数组方式二for(int i = 0;i<aa.length;i++){System.out.println(aa[i]);}}
}
4.3. 数组的拷贝
数组的一个元素拷贝:
public static void main(String[] args) {int[] aa = new int[3];aa[1] = 5;int[] bb = aa;System.out.println(bb[1]);}
整个数组拷贝,经常用来扩充数组
public class Me {public static void main(String[] args) {int[] lucc = {2,4,2,3,3};int[] ints = Arrays.copyOf(lucc, 2 * lucc.length);System.out.println(ints);}
}
数组排序
public class Me {public static void main(String[] args) {int[] lucc = {2,4,2,3,3};Arrays.sort(lucc);System.out.println(lucc);System.out.println(lucc.toString());}
}
JavaSE-基本程序设计结构(下)相关推荐
- 《Java程序设计》实验报告——Java的基本程序设计结构
浙江理工大学 <Java程序设计> 实验报告 20 19-20 20学年第 1学期 学 院 信息学院 班 级 计算机科学技术18(3) 姓 名 申屠志刚 学 号 20 ...
- 【西行 - 官封弼马温】Java 基本程序设计结构
J3 - 白起 Java(Java基础 # 程序设计结构 # 笔记) 1.Hello World 下面是一个简单的 Java 应用程序,它会在程序控制台中打印一句话 "Hello World ...
- 第2章(Java 的基本程序设计结构)
第2章(Java 的基本程序设计结构) 文章目录 第2章(Java 的基本程序设计结构) 2.1一个简单的 Java 应用程序 2.2注 释 2.3数据类型 2.3.1整型 2.3.2浮点型 2.3. ...
- JavaSE-基本程序设计结构(上)
JavaSE-基本程序设计结构(上) 1. 注释 1.1. 单行注释 1.1.1. 规则 1.2. 多行注释 1.2.1. 规则 1.3. 文档注释 1.3.1 规则 1.3.2. 命令行执行(doc ...
- C语言基础知识(三)-程序设计结构、数组、字符串处理函数
本文是C语言的基础知识,主要讲解三种程序设计结构.数组.字符串和字符数组.数组元素查询以及字符串处理函数. 程序结构设计 包括C语言在内的几乎任何编程语言都支持以下三种程序设计结构,它们分别是: 顺序 ...
- 脑与认知科学1 脑的基本结构下
脑与认知科学1 脑的基本结构下 Cortical Topography Microanatomy and Histology 神经细胞简介 Cortical Topography 我们延续上一讲的内容 ...
- 在单缓冲区和双缓冲区结构下,读入并分析完该文件的时间分别是
链接:https://www.nowcoder.com/questionTerminal/5a9eff01452240a7a97495cef08ad3f6?toCommentId=398027 来源: ...
- JAVA实验——Java的基本程序设计结构
实验一 Java的基本程序设计结构 实验目的 熟悉Java开发环境,建立Java工程,练习编程,会使用变量,字符串,数组,输入与输出等API. 实验内容 利用eclipse建立Java工程 必做题 ...
- c语言使用求余方式的转化为二进制程序,C语言第三讲 程序结构 (下).ppt
<C语言第三讲 程序结构 (下).ppt>由会员分享,可在线阅读,更多相关<C语言第三讲 程序结构 (下).ppt(24页珍藏版)>请在人人文库网上搜索. 1.1,第三讲 程序 ...
最新文章
- 怎样预训练GNN能实现更好的迁移效果?
- 企业运维监控平台架构设计与实现
- 讲真话的朋友才是我们需要的!
- 信息学奥赛一本通 1356:计算(calc)
- 支援日本/厄瓜多尔震区 Skype推免费通话
- 在word中添加内容控件,报错未实现该方法或操作
- python客户端与服务器端_Python实现的FTP通信客户端与服务器端功能示例
- ftp客户端使用详细说明【linux和windows】
- 手机上怎样转变图片格式?教你一键快速转格式
- Selenium Web自动化测试框架搭建
- IT人力外包越来越流行的原因剖析
- python中forward是什么意思_pytorch 中forward 的用法与解释说明
- 数据挖掘——基于R文本情感分析(2)
- 怎么记账,记录日常收支
- Burp Suite使用介绍(一)
- matlab 小波的分解与重构
- html5鼠标移过切换图片,鼠标移动到图片上切换到另一张图片,移出时又切默认图片...
- 基于人脸的常见表情识别——模型搭建、训练与测试¶
- 【VIOLA】三岁筱兮: 一喷一醒然,再接再砺乃
- NYIST 113 字符串替换