「java数据颠倒」java颠倒数组
本篇文章给大家谈谈java数据颠倒,以及java颠倒数组对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
在Java中如何将数组中的数据倒置
最简单的算法就是设置一个临时变量,就像交换两个变量一样交换。更好的是使用链表,当然也可以使用ArrayCopy,Copy的时候把源数组最后一个赋给新数组的第一个,一个加,一个减。其他还有……
java 字符串颠倒和换位
import java.text.CharacterIterator;
import java.text.StringCharacterIterator;
import java.util.Arrays;
/**
* 一开始的数字是12345678,全部加上1以后是23456789,然后第一位和最后一位颠倒,
* 变成93456782,然后在把这组数字顺序颠倒,变成28765439~ 就是这意思
*
* @author Gao
* @version 2009-7-29
*
*/
public class Test
{
public static void main(String[] args)
{
String a = "12345678";
String b = "";
// 使用了java.text.CharacterIteraoter类来迭代字符串
CharacterIterator ci = new StringCharacterIterator(a);
int[] nums = new int[a.length()];// 创建一个数组, 他的长度等于字符串的长度
int i = 0;
for (char ch = ci.first(); ch != CharacterIterator.DONE; ch = ci.next())
{
// 判断当前字符是否为数字
if (Character.isDigit(ch))
{
int n = Integer.parseInt(String.valueOf(ch));
nums[i++] = n + 1;
}
}
swap(nums);// 交换头和尾
reverse(nums);// 颠倒数组内所有元素
System.out.println(Arrays.toString(nums));
}
/**
* 交换头和尾两个值
*
* @param nums
*/
private static void swap(int[] nums)
{
// 判断数组是否足够大,如果元素小于1则没有交换的可能
if (nums.length 1)
{
int len = nums.length - 1;
int tmp = nums[0];
nums[0] = nums[len];
nums[len] = tmp;
}
}
/**
* 颠倒数组内所有元素
*
* @param nums
*/
private static void reverse(int[] nums)
{
// 这里可能数据量大的话会有性能问题, 一时没想到好的算法~.~
for (int i = 0; i nums.length; i++)
{
for (int j = i; j nums.length; j++)
{
int tmp = nums[i];
nums[i] = nums[j];
nums[j] = tmp;
}
}
}
}
因为你也是新学的,所以没有使用太多集合类, 还是原始一点儿好, 集合类也不过就是把这些过程进行了封装而已, 而且总是用集合类也无助于基础只是的学习
java程序中数据反过来显示
public class $ {
public static void main(String[] args) {
String str = "0123";
for (int i = str.length() - 1; i = 0; i--) {
System.out.print(str.substring(i, i + 1));
}
}
}
java中怎么颠倒数据输出顺序
颠倒数据输出顺序
那么就需要知道数据,是什么类型的数据?
字符串?数组?集合?
下面代码
import java.util.ArrayList;
import java.util.Collections;
public class DataREV {
public static void main(String[] args) {
String str1 = "abcdefg";
String str2 = new StringBuilder(str1).reverse().toString();//字符串翻转顺序
System.out.println("原始顺序:" + str1 + "\n颠倒顺序:" + str2);
int[] ary1 = { 8, 2, 6, 8 };
System.out.println("原始顺序:");
for (int i = 0; i ary1.length; i++) {
System.out.print(ary1[i] + " ");
}
System.out.println("\n颠倒顺序:");
for (int i = ary1.length - 1; i = 0; i--) {//数组从末尾向第0位方向输出
System.out.print(ary1[i] + " ");
}
System.out.println();
ArrayListString list = new ArrayListString();
list.add("第一");
list.add("第二");
list.add("第三");
for (String s : list) {
System.out.print(s+" ");
}
System.out.println();
Collections.reverse(list);//集合翻转顺序
for (String s : list) {
System.out.print(s+" ");
}
System.out.println();
}
}
输出
原始顺序:abcdefg
颠倒顺序:gfedcba
原始顺序:
8 2 6 8
颠倒顺序:
8 6 2 8
第一 第二 第三
第三 第二 第一
java数据颠倒的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java颠倒数组、java数据颠倒的信息别忘了在本站进行查找喔。
发布于:2022-11-30,除非注明,否则均为
原创文章,转载请注明出处。