2019暑假Java学习笔记(二)
0709,0710
本篇笔记内容较少较简单,多数语法与C语言相同
基础语法(下)
条件语句、循环语句以及跳转语句、数组的相关操作以及用户输入的操作。
流程控制
常见的:条件语句、循环语句、跳转语句。
if语句
1.语法(与C语言基本相同)
2.注意:条件语句都是利用条件表达式的真或假来决定执行路径,Java里不允许将一个数字作为布尔值使用,虽然这在C和C++里是允许的。
switch语句
1.语法(与C语言基本相同)
switch(表达式){
case 值1:
代码块1
break;
case 值2:
代码块2
break;
default:
默认执行的代码块
}
while语句和do-while语句
1.语法(与C语言基本相同)
do{
代码块
}while(条件);
for语句
1.语法(与C语言基本相同)
break关键字
1.语法(与C语言基本相同)
continue关键字
1.语法(与C语言基本相同)
数组
一维数组
1.声明数组的语法
数据类型[] 数组名;
或者
数据类型 数组名[];
(这种跟C语言基本一样)
数组名为合法的变量名
2.为数组分配空间的语法
数组名 = new 数据类型 [数组长度];
也可以将1和2合并,在声明的同时分配空间。
3.将一个数组赋值给另一个数组
int [] a1 = {1,2,3};
int [] a2;
a2 = a1;
这里只是复制了一个引用,即a2和a1是相同数组的不同名称
4.使用foreach遍历数组
for语句在数组内可以使用特殊简化版本
for(元素类型 元素变量:遍历对象){
执行的代码
}
举例:
public class JudgePrime{
public static void main(String[] args){
int [] ages = {12,18,9,33,45,60};
int i = 1;
for(int age:ages){
System.out.println("数组中第"+i+"个元素是"+age);
i++;
}
}
}
二维数组
1.声明和分配空间的语法
数据类型 [][] 数组名 = new 数据类型[行的个数][列的个数];
或者
数据类型 [][] 数组名;
数组名 = new 数据类型[行的个数][列的个数];
也可以
数据类型 [][] 数组名 = {
{第一行值1,第一行值2,...},
{第二行值1,第二行值2,...},
...
{第n行值1,第n行值2,...}
};
注意除了最后一行外,每行右大括号后都跟一个逗号
用户输入操作
上一篇已经涉及到了。
1.在开头写上:
import java.util.Scanner;
即可以使用java.util包下的Scanner类来获取用户的输入
2.下面是输入多种数据以及控制多组数据输入的方法:
Scanner in = new Scanner(System.in);
//获取用户输入的一行数据 返回为字符串
String s = in.nextLine();
//返回用户输入的int值
int i = in.nextInt();
//循环读取int数据,当输入exit时退出循环
while(!in.hasNext("exit")){
System.out.println(in.nextInt());
}
//关闭输入
in.close();
3.如何输入含空格的一句话
使用Scanner.useDelimiter()方法,可以将分隔符修改为回车或其他符号
Scanner scan = new Scnner(System.in).useDelimiter("\n");
System.out.print("请输入:");
String s = scan.next();
System.out.printf("%s",s);
练习题:用户输入
1.要求:
- 获取用户的输入信息(字符串)
- 当用户输入end时,结束输入并打印用户之前输入的所有信息(输入的信息不超过100个)
2.我的代码:
import java.util.Scanner;
public class InputTest{
public static void main(String[] args){
String [] sen=new String[100];
int i = 0;
Scanner in = new Scanner(System.in);
while(!in.hasNext("end")){
sen[i]=in.nextLine();
i++;
}
in.close();
for(int j=0;j<i;j++){
System.out.println(sen[j]);
}
}
}
参考
感想
学习了Java的一些基础语法,感觉是大部分语法与C语言相同,还有一些与Python相同,如格式化输出的方式,import的用法,数组直接赋值等等。
to be continued
总有一天,我会用高亮的代码段让这里焕然一新!这是我的宣言!
2019暑假Java学习笔记(二)的更多相关文章
- 2019暑假Java学习笔记(一)
目录 基础语法(上) HelloWorld 变量 常量 数据类型 整数 浮点数 char类型 boolean类型 String 计算字符串长度 字符串比较 字符串连接 charAt()方法 字符串常用 ...
- 2019暑假Java学习笔记(三)
目录 面向对象 对象 构造方法 引用与对象实例 static final 封装 this 继承 super 方法重载与重写 多态 抽象类 接口 内部类 成员内部类 静态内部类 局部内部类 匿名内部类 ...
- Java学习笔记二十九:一个Java面向对象的小练习
一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...
- 数组排序、递归——(Java学习笔记二)
升序: 选择排序: 选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置 先出现最小值,最后出现最大值. public stat ...
- Java学习笔记二:数据类型II
GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/Intpractice3.java 一 Java中的数据类型 Java ...
- Java学习笔记二十八:Java中的接口
Java中的接口 一:Java的接口: 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承 ...
- Java学习笔记二十七:Java中的抽象类
Java中的抽象类 一:Java抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就 ...
- Java学习笔记二十五:Java面向对象的三大特性之多态
Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...
- Java学习笔记二十四:Java中的Object类
Java中的Object类 一:什么是Object类: Object类是所有类的父类,相当于所有类的老祖宗,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object ...
随机推荐
- 【转载】C#中Convert.ToInt32方法将字符串转换为Int32类型
在C#编程过程中,可以使用Convert.ToInt32方法将字符串或者其他可转换为数字的对象变量转换为ToInt32类型,Convert.ToInt32方法有多个重载方法,最常使用的一个方法将字符串 ...
- 纯css实现省略号,兼容火狐,IE9,chrome
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ABAP开发环境语法高亮的那些事儿
关于SAP ABAP开发环境,Jerry之前写过几篇公众号文章: 那些年我用过的SAP IDE 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧 使用Visual Studio Code ...
- OAuth 2.0 的一个简单解释
OAuth 2.0 是目前最流行的授权机制,用来授权第三方应用,获取用户数据. 这个标准比较抽象,使用了很多术语,初学者不容易理解.其实说起来并不复杂,下面我就通过一个简单的类比,帮助大家轻松理解,O ...
- InitContainer
InitContainer 初始化容器 在Pod中,容器是共享存储资源和网络资源的,所以Init Container容器产生的数据是可以被其他容器作用到的.初始化容器有点类似于postStart 钩子 ...
- Cloudera Certified Associate Administrator案例之Manage篇
Cloudera Certified Associate Administrator案例之Manage篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载Namenode镜像 ...
- 在Windows下/Linux下安装jdk版本
到官网https://www.oracle.com/technetwork/java/javase/downloads/index.html选择适合自己的版本, 目前我做测试和开发主要用的是jdk 8 ...
- spring的@Scheduled定时任务,同一时间段的定时任务只会执行一个,其余的会被阻塞,@Scheduled注解定时任务并发执行解决办法,即多线程运行定时任务
原文:https://blog.csdn.net/qq_35937303/article/details/88851064 现有两个定时任务 @Component("aa") pu ...
- SQL进阶系列之12SQL编程方法
写在前面 KISS -- keep it sweet and simple 表的设计 注意命名的意义 英文字母 + 阿拉伯数字 + 下划线"_" 属性和列 编程的方针 写注释 注意 ...
- scrapy框架爬取糗妹妹网站妹子图分类的所有图片
爬取所有图片,一个页面的图片建一个文件夹.难点,图片中有不少.gif图片,需要重写下载规则, 创建scrapy项目 scrapy startproject qiumeimei 创建爬虫应用 cd qi ...