Java—数组和方法
- 数组
- 声明数组 数组类型[] 数组名;or 数据类型 数组名[]; 如:int[] scores;
- 分配空间 数组名 = new 数据类型[数组长度];如:scores = new int[5];
以上两步合并:int[] scores = new int[5];
3. 赋值 scores[0] = 76;
以上三步合并:int[] scores = {76, 80, 81, 82, 99};
等价于int[] scores = new int[]{76, 80, 81, 82, 99};
数组名.length:获取数组的长度
- 使用Arrays类操作java中的数组
Arrays类是java提供的一个工具类,在java.util包中。
- Arrays.sort(数组名); 对数组进行排序,按升序排列
- Arrays.toString(数组名);将一个数组转换成字符串,把多个数组元素连接在一起,多个元素之间使用逗号和空格隔开。
- 使用foreach操作数组
foreach 并不是java中的关键字,是for语句的特殊简化版本。
for (元素类型 元素变量:遍历对象) {
执行代码;
}
String[] subjects = new String[5];
subjects[0] = "Oricle";
subjects[1] = "PHP";
subjects[2] = "Linux";
subjects[3] = "Java";
subjects[4] = "Html";
//System.out.println("数组中第4个科目为:" + subjects[3]);
Arrays.sort(subjects);
for (int i = 0; i < subjects.length; i++) {
System.out.println(subjects[i]);
}
System.out.println("输出数组中的元素:" + Arrays.toString(subjects));
for (String subject : subjects) {
System.out.println(subject);
}
- 二维数组
- 声明数组并分配空间:数据类型[][] 数组名 = new 数据类型[行的个数][列的个数];or 数据类型[][] 数组名;数组名 = new 数据类型[行的个数][列的个数];如:int[][] num = new int[2][3];
- 赋值:数组名[行的索引][列的索引] = 值; 如:int[1][2] = 12;
在定义二维数组时,可以至指定行的个数,然后再为每一行分别指定列的个数,如果每行的列数不同,则创建的是不规则的二维数组。
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]);
}
}
- 方法
定义方法:访问修饰符 返回值类型 方法名(参数列表) {
方法体
}
- 访问修饰符:public、protected、private甚至可以省略。
- 返回值类型:如果方法不返回任何值,则返回值类型指的是void;如果方法有返回值,则需要指定返回值的类型,并在方法体中使用return语句返回值。
- 参数列表:每个参数由参数类型和参数名组成,参数之间用逗号隔开。
- 如果方法的返回类型为void,则方法中不能使用return。
- 方法的返回值最多只有一个,不能返回多个值。
- 方法返回值的类型必须兼容,如果返回值类型为int,则不能返回String型值。
package com.test;
public class Demo4 {
public static void main(String[] args) {
Demo4 demo = new Demo4();
demo.show();
double avg = demo.calcAvg();
System.out.println("平均成绩为:" + avg);
}
public void show() {
System.out.println("Welcome to java!");
}
public double calcAvg() {
double java = 92.5;
double php = 83.0;
double avg = (java + php) / 2;
return avg;
}
}
返回值为:
Welcome to java!
平均成绩为:87.75
- 带参方法的使用
把定义方法时的参数称为形参,目的是用来定义方法需要传入的参数的个数和类型;把调用方法时的参数称为实参,是传递给方法真正被处理的值。
- 调用带参数方法时,必须保证实参的数量、类型和顺序与形参一一对应
- 方法的参数可以是基本数据类型,也可以是引用数据类型。
public static void main(String[] args) {
Demo4 demo= new Demo4();
demo.calcAvg(94, 81);
}
public void calcAvg(double score1, double score2) {
double avg = (score1 + score2) / 2;
System.out.println("平均分:"+avg);
}
- 方法的重载
定义:如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,称为方法的重载,也可称为该方法被重载了。
方法的重载与方法的修饰符或返回值没有关系
public class HelloWorld {
public static void main(String[] args) {
HelloWorld hello = new HelloWorld();
// 调用无参的方法
hello.print();
// 调用带有一个字符串参数的方法
hello.print("java");
// 调用带有一个整型参数的方法
hello.print(18);
}
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);
}
}
返回值为:
无参的print方法
带有一个字符串参数的print方法,参数值为:java
带有一个整型参数的print方法,参数值为:18
Java—数组和方法的更多相关文章
- Java 数组拷贝方法 System.arraycopy
System类提供的数组拷贝方法: public static native void arraycopy(Object src, int srcPos, Object dest, int destP ...
- Java数组合并方法学习。
参考博客: https://blog.csdn.net/liu_005/article/details/72760392 https://blog.csdn.net/jaycee110905/arti ...
- JAVA 数组作为方法返回值—返回地址
package Code411;/*一个方法可以有0,1,多个 参数,但只能有0和1个返回值希望一个方法产生多个结果数据进行返回 数组作为方法的参数,传递进去的是数组的地址值. */public cl ...
- JAVA 数组作为方法参数—传递地址
package Code411;//数组作为方法参数—传递地址public class DodeArrayParam { public static void main(String[] args) ...
- Java数组和方法
1. 数组可以作为方法的参数 package cn.itcast.day05.demo04; /* 数组可以作为方法的参数. 当调用方法的时候,向方法的小括号进行传参,传递进去的其实是数组的地址值. ...
- 083、Java数组之方法返回数组
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- java 数组声明方法
//数组 public class Test16{ public static void main(String args[]){ //声明一: int [] x; x = new int[3];// ...
- java基础学习04(数组与方法)
数组与方法 一.完成的目标 1. 掌握数组的定义.使用方法.引用传递 2. 掌握方法及其方法的重载 3. 使用方法接收和返回一个数组 4. java新特性对数组的操作支持 二.数组的定义和使用 数组是 ...
- java数组、java.lang.String、java.util.Arrays、java.lang.Object的toString()方法和equals()方法详解
public class Test { public static void main(String[] args) { int[] a = {1, 2, 4, 6}; int[] b = a; in ...
随机推荐
- Qt 学习之路 2(23):自定义事件
Qt 学习之路 2(23):自定义事件 豆子 2012年10月23日 Qt 学习之路 2 21条评论 尽管 Qt 已经提供了很多事件,但对于更加千变万化的需求来说,有限的事件都是不够的.例如, ...
- Python判断字符串编码以及编码的转换
转自:http://www.cnblogs.com/zhanhg/p/4392089.html Python判断字符串编码以及编码的转换 判断字符串编码: 使用 chardet 可以很方便的实现字符串 ...
- POJ1049 Microprocessor Simulation
题目来源:http://poj.org/problem?id=1049 题目大意: 一种小型的微处理器有以下特性: 1. 每个字长4bit. 2. 地址用2个字进行编码.先高位字后低位字,即高位字大的 ...
- [TJOI2017]DNA (FFT)
[Luogu3763] FFT做字符串匹配即可,详见代码 // luogu-judger-enable-o2 #include<cstdio> #include<cstring> ...
- thymeleaf总结
thymeleaf 基本功能是将 th:xxx的内容替换html标签的内容 原标签的内容会被替换掉,原内容只是前端用来显示demo的 和freemarker, velocity的重要区别是,它们的自定 ...
- java——设计一个支持push,pop,top、在恒定时间内检索最小元素的栈。
普通方法: 需要另外一个栈 用来存放每一时刻的min值 巧妙版: 只需要一个stack,stack中存的是与min的差值 但由于min是两个整数之间的差值,有可能会出现差值超过整数边界值的情况,因此要 ...
- beeline hiveserver2 start
1. install hive 2. start hiveserver2 查看hiverserver2 是否正常运行: ps -ef | grep hive 2. start beeline 3. 链 ...
- MySQL 0 学习
ubuntu 安装mysql 创建用户 以及外部如何可视化连接的 方法 https://www.linuxidc.com/Linux/2017-01/139502.htm 2.3 MyS ...
- python 下载图片
import requests from PIL import Image from io import BytesIO url = 'http://image2.buslive.cn/shp/upl ...
- maya2018安装失败如何卸载重装
AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...