Java数组转置
数组转置,就是将打印的数组的列和行进行位置对换。
我们就可以用两个for循环遍历数组,然后交换arr[i][j]与arr[j][i]
public class Demo{
public static void main(String[] args){
int[][] arr = new int[][]{{1,2,3},{4,5,6},{7,8,9}}; for(int i = 0; i < arr.length; i++){
for(int j = 0; j < arr[i].length; j++){
System.out.print(arr[i][j] + " ");
}
System.out.println();
} System.out.println();
System.out.println(); int temp = 0; for(int i = 0; i < arr.length; i++){
for(int j = 0; j < i; j++){
temp = arr[i][j];
arr[i][j] = arr[j][i];
arr[j][i] = temp;
}
} for(int i = 0; i < arr.length; i++){
for(int j = 0; j < arr[i].length; j++){
System.out.print(arr[i][j] + " ");
}
System.out.println();
} }
}
输出结果:
注意:在进行转置是,只需转置一次,否则转置两次会没有变化
以上方法只适用于正方形矩阵,下面介绍一种矩形方阵的方法.
public static void main(String[] args){
char[][] chss = new char[][]{
{'a','b','c','d'},
{'e','f','g','h'}
};
char[][] temp = new char[chss[0].length][chss.length]; for(int i = 0; i < chss.length; i++){
for(int j = 0; j < chss[i].length; j++){
temp[j][i] = chss[i][j];
}
} for(int i = 0; i < temp.length; i++){
for(int j = 0; j < temp[i].length; j++){
System.out.print(temp[i][j]);
}
System.out.println();
} }
输出结果:
Java数组转置的更多相关文章
- java 数组冒泡排序、转置(降序)
1.java 数组冒泡排序 排序的基本原理(升序): 原始数据: 2 .1 .9 .0 .5 .3 .7 .6 .8: 第一次排序: 1 .2 .0 .5 .3 .7 .6 .8 .9 : 第二次 ...
- java实现数组转置
** 数组转置** 编写程序将2行3列的数组行列置换复制给3行2列的数组(即数组的转置).已经写了如下代码,请完善之: class y{ public static void main(String[ ...
- 菜鸡的Java笔记 第七 - java 数组
数组的基本概念 笔试中经常出现的试题或是问题 1.1 概念 数组指的是一组相关变量的集合 如果用最原始的方式定义100个变量的话没问题但是这些变量的关联实在 ...
- Java 数组
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java语言中提供的数组是用来存储固定大小的同类型元素. 你可以声明一个数组变量,如numbers[100 ...
- 第5章 Java数组
1.什么是数组 数组可以想象成一个巨大的盒子,这个盒子里面存放的是同一个数据类型的数据 例如:int[] scores = {78,68,94,93}; 2.如何使用Java中的数组 2.1申明数组 ...
- Java 数组基础
数组 数组(Array):相同类型数据的集合. 定义数组 方式1(推荐,更能表明数组类型) type[] 变量名 = new type[数组中元素的个数]; 比如: int[] a = new int ...
- Java数组及其内存分配
几乎所有的程序设计语言都支持数组.Java也不例外.当我们需要多个类型相同的变量的时候,就考虑定义一个数组.在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静 ...
- [转载]Java数组扩容算法及Java对它的应用
原文链接:http://www.cnblogs.com/gw811/archive/2012/10/07/2714252.html Java数组扩容的原理 1)Java数组对象的大小是固定不变的,数组 ...
- Java数组技巧攻略
Java数组技巧攻略 0. 声明一个数组(Declare an array) String[] aArray = new String[5]; String[] bArray = {" ...
随机推荐
- CodeForces 455C Civilization(并查集+树直径)
好久没有写过图论的东西了,居然双向边要开两倍空间都忘了,不过数组越界cf居然给我报MLE??这个题题意特别纠结,一开始一直不懂添加的边长是多长... 题意:给你一些点,然后给一些边,注意没有重边 环, ...
- php之打印
echo 比较适合用来打印字符串,数字 print_r 一般打印数组 var_dump 可以打印所有类型,打印变量的类型及其值
- spring.jar的下载地址
http://repo.spring.io/release/org/springframework/spring/
- el表达式判断字符串相等
el表达式判断字符串相等 Java code 1 ${"a" == "a"} ${"b" eq "b"} 都可以 & ...
- DELPHI中四种EXCEL访问技术实现
一.引言 EXCEL在处理中文报表时功能非常强大,EXCEL报表访问也是信息系统开发中的一个重要内容,本文总结以往开发中所用到的几中EXCEL文件访问方法,在实际工作中也得到了很好的验证,本文列举了其 ...
- 分享知识-快乐自己:解决 Maven 无法下载 fastdfs-client-java 依赖。
因为fastdfs-client-java-1.27-SNAPSHOT.jar这个依赖包在maven中央仓库是没有的. 需要自己编译源码成jar本地安装到maven 的本地仓库,安装完以后就能正常引用 ...
- SpringBoot_05_热部署和debug
一.pom.xml配置 增加以下pom.xml配置 <!--1.spring-boot插件--> <plugin> <groupId>org.springframe ...
- PHP获取当前日期及本周一是几月几号的方法
这篇文章主要介绍了PHP获取当前日期及本周一是几月几号的方法,涉及php时间戳.日期转换与运算相关操作技巧,需要的朋友可以参考下 本文实例讲述了PHP获取当前日期及本周一是几月几号的方法.分享给大家供 ...
- Struts2 - 异常处理: exception-mapping 元素
异常处理: exception-mapping 元素 在action方法中添加 int i=1/0; 请求action后,结果为: 在struts.xml中添加异常处理:exception-mappi ...
- BZOJ1216:[HNOI2003]操作系统
我对模拟的理解:https://www.cnblogs.com/AKMer/p/9064018.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem ...