JAVA学习<四>
一. 数组:
Java 中操作数组只需要四个步骤:
1、 声明数组
语法: 数据类型[ ] 数组名;
或者 数据类型 数组名[ ];
其中,数组名可以是任意合法的变量名。
2、 分配空间
简单地说,就是指定数组中最多可存储多少个元素
语法: 数组名 = new 数据类型 [ 数组长度 ];
其中,数组长度就是数组中能存放元素的个数。
话说,我们也可以将上面的两个步骤合并,在声明数组的同时为它分配空间,如:
3、 赋值
分配空间后就可以向数组中放数据了,数组中元素都是通过下标来访问的,例如向 scores 数组中存放学生成绩
4、 处理数组中数据
我们可以对赋值后的数组进行操作和处理,如获取并输出数组中元素的值
在 Java 中还提供了另外一种直接创建数组的方式,它将声明数组、分配空间和赋值合并完成
二.循环遍历数组的值:
public class HelloWorld {
public static void main(String[] args) {
// 定义一个长度为 3 的字符串数组,并赋值初始值
String[] hobbys = { "sports", "game", "movie" };
System.out.println("循环输出数组中元素的值:");
// 使用循环遍历数组中的元素
for(int i = 0; i < hobby.count; i++){
System.out.println(hobby[i]);
}
}
}
public class HelloWorld {
public static void main(String[] args) {
// 定义一个整型数组,并赋初值
int[] nums = new int[] { 61, 23, 4, 74, 13, 148, 20 };
int max = nums[0]; // 假定最大值为数组中的第一个元素
int min = nums[0]; // 假定最小值为数组中的第一个元素
double sum = 0;// 累加值
double avg = 0;// 平均值
for (int i = 0; i < nums.length; i++) { // 循环遍历数组中的元素
// 如果当前值大于max,则替换max的值
if(nums[i] > max){
max = nums[i];
}
// 如果当前值小于min,则替换min的值
if(nums[i] < min) {
min = nums[i];
}
// 累加求和
sum += sums[i];
}
// 求平均值
avg = sum / i;
System.out.println("数组中的最大值:" + max);
System.out.println("数组中的最小值:" + min);
System.out.println("数组中的平均值:" + avg);
}
}
三.使用 Arrays 类操作 Java 中的数组:
1、 排序
语法: Arrays.sort(数组名);
2、 将数组转换为字符串
语法: Arrays.toString(数组名);
可以使用 toString( ) 方法将一个数组转换成字符串,该方法按顺序把多个数组元素连接在一起,多个元素之间使用逗号和空格隔开,如:
//导入Arrays类
import java.util.Arrays;
public class HelloWorld {
public static void main(String[] args) {
// 定义一个字符串数组
String[] hobbys = { "sports", "game", "movie" };
// 使用Arrays类的sort()方法对数组进行排序
Arrays.sort(hobby);
// 使用Arrays类的toString()方法将数组转换为字符串并输出
System.out.println( Arrays.toString(hobby));
}
}
五.使用 foreach 操作数组:
import java.util.Arrays;
public class HelloWorld {
public static void main(String[] args) {
// 定义一个整型数组,保存成绩信息
int[] scores = { 89, 72, 64, 58, 93 };
// 对Arrays类对数组进行排序
Arrays.sort(scores);
// 使用foreach遍历输出数组中的元素
for ( Int score: scores ) {
System.out.println(score);
}
}
}
六. 二维数组:
public class HelloWorld {
public static void main(String[] args) {
// 定义两行三列的二维数组并赋值
String[][] names={{"tom","jack","mike"},{"zhangsan","lisi","wangwu"}};
// 通过二重循环输出二维数组中元素的值
for (int i = 0; i <names.length ; i++) {
for (int j = 0; j < names[i].length; j++) {
System.out.println( names[i][j] );
}
System.out.println();
}
}
}
七.如何定义 Java 中的方法:

1、 访问修饰符:方法允许被访问的权限范围, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用,其他几种修饰符的使用在后面章节中会详细讲解滴
2、 返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void ;如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值
3、 方法名:定义的方法的名字,必须使用合法的标识符
4、 参数列表:传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开
根据方法是否带参、是否带返回值,可将方法分为四类:
Ø 无参无返回值方法
Ø 无参带返回值方法
Ø 带参无返回值方法
Ø 带参带返回值方法
public class HelloWorld {
//定义了一个方法名为 print 的方法,实现输出信息功能
public void print() {
System.out.println("Hello World");
}
public static void main(String[] args){
//在 main 方法中调用 print 方法
HelloWorld test=new HelloWorld();
test.print();
}
}
八.Java 中无参带返回值方法的使用:
public class HelloWorld {
public static void main(String[] args) {
// 创建名为hello的对象
HelloWorld hello = new HelloWorld();
// 调用hello对象的calcAvg()方法,并将返回值保存在变量avg中
double avg = hello.calcAvg();
System.out.println("平均成绩为:" + avg);
}
// 定义一个返回值为double类型的方法
public Double calcAvg() {
double java = 92.5;
double php = 83.0;
double avg = (java + php) / 2; // 计算平均值
// 使用return返回值
return avg;
}
}
九.编程练习:
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
// 创建对象,对象名为hello
HelloWorld hello = new HelloWorld();
// 调用方法并将返回值保存在变量中
hello.getMaxAge();
// 输出最大年龄
System.out.println("最大年龄为:" + maxScore);
}
/*
* 功能:输出学生年龄的最大值
* 定义一个无参的方法,返回值为年龄的最大值
* 参考步骤:
* 1、定义一个整形数组 ages ,保存学生年龄,数组元素依次为 18 ,23 ,21 ,19 ,25 ,29 ,17
* 2、定义一个整形变量 max ,保存学生最大年龄,初始时假定数组中的第一个元素为最大值
* 3、使用 for 循环遍历数组中的元素,并与假定的最大值比较,如果比假定的最大值要大,则替换当前的最大值
* 4、使用 return 返回最大值
*/
public int getMaxAge() {
Int[] ages = { 18 ,23 ,21 ,19 ,25 ,29 ,17 };
Int max = ages[0];
for(Int i = 0; i < ages.length; i++) {
if(ages[i] > max) {
max = ages[i];
}
}
returm max;
}
}
十.Java 中带参无返回值方法的使用:
public class HelloWorld {
public static void main(String[] args) {
// 创建对象,对象名为hello
HelloWorld hello = new HelloWorld();
// 调用方法,传入两门课程的成绩
hello.calcAvg(94, 81);
}
/*
* 功能:计算两门课程考试成绩的平均分并输出平均分
* 定义一个包含两个参数的方法,用来传入两门课程的成绩
*/
public Double calcAvg(Double class1, Double class2) {
return (class1 + class2) / 2;
}
}
十一.Java 中方法的重载:
如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。
判断方法重载的依据:
1、 必须是在同一个类中
2、 方法名相同
3、 方法参数的个数、顺序或类型不同
4、 与方法的修饰符或返回值没有关系
public class HelloWorld {
public static void main(String[] args) {
// 创建对象
HelloWorld hello = new HelloWorld();
// 调用无参的方法
hello.print();
// 调用带有一个字符串参数的方法
hello.print("SiSi");
// 调用带有一个整型参数的方法
hello.print(66);
}
public void print() {
System.out.println("无参的print方法");
}
public void print(String name) {
System.out.println("带有一个字符串参数的print方法,参数值为:" + name);
}
public void print(int age) {
System.out.println("带有一个整型参数的print方法,参数值为:" + age);
}
}
练习:
//导入java.util.Arrays;
public class HelloWorld {
public static void main(String[] args) {
// 创建对象,对象名为hello
HelloWorld hello = new HelloWorld();
// 调用方法并将返回值保存在变量中
int[] nums = hello.getArray(8);
// 将数组转换为字符串并输出
System.out.println(Arrays.toString(nums));
}
/*
* 功能:创建指定长度的int型数组,并生成100以内随机数为数组中的每个元素赋值
* 定义一个带参带返回值的方法,通过参数传入数组的长度,返回赋值后的数组
*/
public int[] getArray(int length) {
// 定义指定长度的整型数组
int[] nums = new int[length];
// 循环遍历数组赋值
for (Int i = 0; i < nums.length; i++ ) {
// 产生一个100以内的随机数,并赋值给数组的每个成员
nums[i] = (Int)(Math.random() * 100);
}
return nums; // 返回赋值后的数组
}
}
JAVA学习<四>的更多相关文章
- Java学习 (四)基础篇 Java基础语法
注释&标识符&关键字 注释 注释并不会被执行,其主要目的用于解释当前代码 书写注释是一个非常好的习惯,大厂要求之一 public class hello { public static ...
- java学习(四) excel读取
private static void readExcel() { String filePath = "C:/Standardzid.xls"; File file = new ...
- Java开发学习(四十一)----MyBatisPlus标准数据层(增删查改分页)开发
一.标准CRUD使用 对于标准的CRUD功能都有哪些以及MyBatisPlus都提供了哪些方法可以使用呢? 我们先来看张图: 1.1 环境准备 这里用的环境就是Java开发学习(四十)----MyBa ...
- 从.Net到Java学习第四篇——spring boot+redis
从.Net到Java学习系列目录 “学习java已经十天,有时也怀念当初.net的经典,让这语言将你我相连,怀念你......”接上一篇,本篇使用到的框架redis.FastJSON. 环境准备 安装 ...
- java学习(四)
学号 20189214 <Java程序设计>第四周学习总结 教材学习内容总结 枚举 枚举是JDK1.5版本新增的特性(泛型.For-each等如今被广泛应用的特性也是由JDK1.5时所新增 ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- Java实验四
20145113 Java实验四 快捷键 之前没怎么记ISDEA的快捷键,但是熟练使用快捷键可以带来很多的便利,于是先开始学习一些常用的快捷键,就采用它默认的快捷键,这样后期就不会出现冲突,一些and ...
- Java学习第一天
Java学习第一天 对于网络管理员或者黑客必须知道的八个cmd命令 详情请参考:http://www.2cto.com/os/201608/533964.html nbtstat ...
随机推荐
- Android项目的目录结构
assets 资产目录, 存放一个文件的 这个文件会被打包到应用程序的apk(安装包 ) bin 编译后的文件目录 gen 自动生成文件的目录 roject.properties 代表编译的版本 ...
- 公钥与私钥,HTTPS详解
1.公钥与私钥原理1)鲍勃有两把钥匙,一把是公钥,另一把是私钥2)鲍勃把公钥送给他的朋友们----帕蒂.道格.苏珊----每人一把.3)苏珊要给鲍勃写一封保密的信.她写完后用鲍勃的公钥加密,就可以达到 ...
- 如何正确做 Web端压力测试?
一个完整的压力测试需要关注三个方面:如何正确产生压力.如何定位瓶颈.如何预估系统的承载能力. (1) 如何产生压力:产生压力的方法有很多,通常可以写脚本产生压力机器人对服务器进 ...
- Oracle和sqlserver关于锁和隔离级别的差异
事务属性:ACID(原子性.一致性.隔离性.持久性) 隔离级别:主要针对的是共享锁的持有时间和范围 SQL标准定义了以下四种事务隔离级别 READ UNCOMMITTED 允许脏读. 不可重 ...
- IOS开发-CAlayer-锚点小结
CAlayer层的属性:anchorPoint(锚点) CAlayer *view; 1.决定着CALayer上的哪个点会在position属性所指的位置(设置以后旋转动画,就是以锚点为中心旋转) ...
- Mina 资料
http://blog.csdn.net/cutesource/article/category/631854 http://wslfh2005.iteye.com/ http://www.cnblo ...
- HackerRank "Kitty and Katty"
It's more of a brain-teaser than a Game Theory problem.. #!/bin/python3 T = int(input().strip()) for ...
- CentOS的安装与克隆
CentOS的安装与克隆 环境说明 win7 x64位:VMware12:CentOS-6.5-x86_64-minimal 安装与初始配置 安装 在WM主页--“创建新的虚拟机”--自定义--... ...
- [EventBus源码解析] EventBus.register 方法详述
前情概要 在上一篇中,介绍了EventBus的基本使用方法,以及一部分进阶技巧.本篇及以后的几篇blog将会集中解析EventBus.java,看看作者是如何优雅地实现这个看似简单的事件分发/接收机制 ...
- COSBench添加driver负载机
说明:Driver是COSBench测试工具中对负载机的一种标记,相当于loadrunner中的负载发生器. 在使用COSBench进行云存储性能测试时,面对强大的云服务,如果只有单个driver负载 ...