java中的数组概念
数组的定义形式:
动态初始化方式;
1.声明并开辟数组
String str[]=new String[3];//3表示数组的长度
2.分布完成
String str[]=null;
str=new String[3];
静态初始化
1.简化格式
String str [] = {"1","2","3"};
2.完整格式
String str = new String[]{"1","2","3"}
数组的内存分析,数组属于引用传递
public class Test{
public static void main(String args[]){
int data[] = new int[3];//开辟一个长度为3的数组
data[0]=1;
data[1]=2;
data[2]=3;
int temp[] = data;
temp[0] = 99
for(int x=0;x<data.length;x++){
System.out.println(data[x]);
}
}
}
当temp[0]的值改变,则data[0]也会被改变,这就是引用传递;

二维数组的定义
public class Test{
public static void main(String args[]){
int data[][] = new int[][]{
{,,},
{,,},
{,,}
};
//进行数组的输出操作
//外层循环控制行
for(int x=;x<data.length;x++){
//内层循环控制列
for(int y=;y<data[x].length;y++){
System.out.print(data[x][y]+"\t");
}
System.out.println();
}
}
}
数组排序中的一个方法
public class Test{
public static void main(String args[]){
int data[] = new int[]{,,,,,,,,,,};
print(data);
sort(data);
print(data);
}
public static void sort(int arr[]){
for(int x=;x<arr.length;x++){//外层循环主要控制排序的次数
for(int y=;y<arr.length-;y++){//内层循环主要是进行数组的排序
if(arr[y]>arr[y+]){
int temp=arr[y];
arr[y] = arr[y+];
arr[y+]=temp;
}
}
}
}
public static void print(int temp[]){
for(int x=;x<temp.length;x++){
System.out.print(temp[x]+"、");
}
System.out.println();
}
}
数组的转置
//数组的转置
public class Test{
public static void main(String args[]){
int data[] = new int[]{1,2,3,4,5,6,7,8,9,10};
print(data);
reverse(data);
print(data);
}
public static void reverse(int arr[]){
int head=0; //从头开始增加
int tail=arr.length-1; //从尾部递减
for(int x=0;x<arr.length/2;x++){
int t=arr[head];
arr[head] = arr[tail];
arr[tail] = t;
tail--;
head++;
}
}
public static void print(int temp[]){
for(int x=0;x<temp.length;x++){
System.out.print(temp[x]+"、");
}
System.out.println();
}
}
二维数组转置
public class Test{
public static void main(String args[]){
int data[][] = new int[][]{
{1,2,3},
{4,5,6},
{7,8,9}
};
print(data);
reverse(data);
print(data);
}
public static void reverse(int arr[][]){
for(int x=0;x<arr.length;x++){
for(int y=x;y<arr[x].length;y++){
int t=arr[x][y];
arr[x][y]=arr[y][x];
arr[y][x] = t;
}
}
}
public static void print(int temp[][]){
for(int x= 0;x<temp.length;x++){
for(int y=0;y<temp[x].length;y++){
System.out.print(temp[x][y]+"、");
}
System.out.println();
}
}
}
数组中常用的方法
数组拷贝:System.arraycopy
public class TestDemo{
public static void main(String args[]){
int dataA[] =new int[]{1,2,3,4,5,6,7,8,9};//源数组
int dataB[] =new int[]{11,22,33,44,55,66,77,88,99};//拷贝的数组
System.arraycopy(dataA,2,dataB,3,2);
print(dataB);
}
public static void print(int temp[]){
for(int x= 0;x<temp.length;x++){
System.out.print(temp[x]+"、");
}
System.out.println();
}
}
11、22、33、3、4、66、77、88、99、
数组排序的方法:java.util.Array.sort(数组名称);
初次接触对象数组:所谓的对象数组,就是把引用类型的对象通过数组的形式进行保存
代码实例
class Book{
private String title;
private double price;
public Book(String title, double price){
this.title=title;
this.price=price;
}
public String toString(){
return "书的名字:" + this.title + ",价格:" + this.price;
}
}
public class Test{
public static void main(String args[]){
Book book[] = new Book[]{
new Book("java",11.3),
new Book("javascript",17.3),
new Book("html",9.3)
};
for(int x=0;x<book.length;x++){
System.out.println(book[x]);
}
}
}
java中的数组概念的更多相关文章
- 第81节:Java中的数组
第81节:Java中的数组 本节介绍数组的基本概念,数据就是一种数据结构,可以用来存储多个数据,每个数组中可以存放相同类型的数据.比如,在学校,我们是一个班,这里的班级中每个同学都是这个班级数组中的元 ...
- Java中的数组与集合
此文转载自:http://student-lp.iteye.com/blog/2082362 在java编程的过程中,我们不能确定某一类型的对象到底会需要多少,为了解决这个问题,java提供了容纳对象 ...
- Java学习之路(三):Java中的数组
数组的概述和定义的格式 数组的作用: 用来存储同种数据类型的多个值 数组的基本概念: 数组是存储同一种数据类型多个元素的集合.就相当于一个容器. 注意:数组既可以存储基本数据类型,也可以存储引用数据类 ...
- 慕课网-安卓工程师初养成-6-3 如何使用 Java 中的数组
来源:http://www.imooc.com/code/1525 Java 中操作数组只需要四个步骤: 1. 声明数组 语法: 或者 其中,数组名可以是任意合法的变量名,如: 2. 分配空间 简 ...
- 如何使用 Java 中的数组
Java 中操作数组只需要四个步骤: 1. 声明数组 语法: 数据类型[ ] 数组名: 或者 数据类型 数组名[ ]: 其中,数组名可以是任意合法的变量名,如: 2. 分配空间 简单地说,就是指 ...
- 【转】java中byte数组与int类型的转换(两种方式)----不错
原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法, ...
- 【JAVA零基础入门系列】Day10 Java中的数组
什么是数组?顾名思义,就是数据的组合,把一些相同类型的数放到一组里去. 那为什么要用数组呢?比如需要统计全班同学的成绩的时候,如果给班上50个同学的成绩信息都命名一个变量进行存储,显然不方便,而且在做 ...
- Java中对数组的操作
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对于数组的实现及处理也不尽相同. Java语言中提供的数组是用来存储固定大小的同类型元素.如:声明一个数组变量,numbers[100]来 ...
- Java中的数组初探
1.数组的类型? Java中的数组为引用类型. 2.数组的三种初始化方式 1. int[] arr1=new int[] {1,2,3,4,}; 2. int[] arr2= {1,2,3,4,}; ...
随机推荐
- http的CA证书安装(也就是https)
近几年随着安全意识的提高,https流行起来,很多小伙伴不太了解https是什么,其实http和https并没有区别,简单的来说,https就是将http通信进行了加密和解密的一个过程.加上谷歌浏览器 ...
- bjtu 1819 二哥求和(前缀和)
题目 . 二哥的求和 时间限制 ms 内存限制 MB 题目描述 某一天,calfcamel问二哥,有道数学题怎么做呀?二哥看了一下说我不会呀,于是二哥找到了你,请你帮他解决这个问题,这样二哥就可以鄙视 ...
- python内置函数 divmod()
先来看一下builtins.py中的代码: def divmod(x, y): # known case of builtins.divmod """ Return th ...
- Alpha冲刺Day8
Alpha冲刺Day8 一:站立式会议 今日安排: 经过为期5天的冲刺,基本完成企业人员模块的开发.因第三方机构与企业存在委托的关系.第三方人员对于风险的自查.风险列表的展示以及自查风险的统计展示(包 ...
- 20145237 《Java程序设计》第三周学习总结
20145237 <Java程序设计>第3周学习总结 教材学习内容总结 第四章主要讲了Java基本类型中的类类型,如何定义类.构造函数.使用标准类.基本类型打包器.数组复制.字符串等内容查 ...
- Hibernate之Hibernate的体系结构
体系结构简图: 这是一张体系结构的简图,其中的hibernate.properties文件的作用相当于配置文件hibernate.cfg.xml XML Mapping对应的就是映射文件 XXXX.h ...
- 老板怎么办,我们网站遭到DDoS攻击又挂了?
相信现在正在阅读此文的你,一定听说过发生在上个月的史上最大的DDoS攻击. 美国东部时间2月28日,GitHub在一瞬间遭到高达1.35Tbps的带宽攻击.这次DDoS攻击几乎可以堪称是互联网有史以来 ...
- aix 6.1系统怎么安装?这里有详细图文教程
今年六月,我们公司出现了一次非常严重的数据丢失的事故.生产服务器崩溃导致所有的业务都陷于停滞,而且由于涉及到公司机密又无法贸然到数据恢复公司进行恢复,可是自己又无法解决.权衡利弊还是决定找一家有保密资 ...
- es6对象字面量增强
相对于ES5,ES6的对象字面量得到了很大程度的增强.这些改进我们可以输入更少的代码同时语法更易于理解.那就一起来看看对象增强的功能.对象字面量简写(Object Literal Shorthand) ...
- [JCIP笔记] (二)当我们谈线程安全时,我们在谈论什么
总听组里几个大神说起线程安全问题.本来对"线程安全"这个定义拿捏得就不是很准,更令人困惑的是,大神们用这个词指代的对象不仅抽象而且千变万化.比如,我们的架构师昨天说: " ...