「java循环后移」java循环移位

博主:adminadmin 2022-12-27 10:24:08 74

本篇文章给大家谈谈java循环后移,以及java循环移位对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java语言初学者,求:输入的一个小写字母,将字母循环后移5个位置后输出.如’a’变成’f’,’w’变成’b’

public class Test {

    public static void main(String[] args) {

        Scanner s = new Scanner(System.in);

        String str = s.next();

        int a = str.toLowerCase().charAt(0);

        System.out.println(a);

        if(a+5'z'){

            a = ('a'-1)+a+5-'z';

        }else{

            a+=5;

        }

        System.out.println(new String(new char[]{(char)a}));

    }

}

Java数组中,先声明一个数组降序排列,然后输入一个数插入进去,关于元素后移问题,求解?

假如 scores.length=10

那就是从9开始,第9个元素等于9-1个元素。。。。。。循环

意思是 9=8; Java中 把“右边“的值赋给“左边“。

把第 8 个元素的值 赋给 第 9 个元素,以此类推。第 6 给第 7 。。。 元素就后移了

int[] scores=new int[10]; //声明一个长度为 10 的数组 按大小赋几个值,(举个从大到小的例子)

int index= scores.length; //保存新增元素插入的位置 , 即 index为 新元素的下标。

Scanner input=new Scanner(System.in);

int num=input.nextInt(); //接收要插入的元素

for(int i=0 ; iscores.length ; i++){

if(numscores[i]){

index=i ;// 如果插入元素的值 “大于” 数组元素的值 , 则把数组元素的 下标 赋给 插入元素

break;

}

}

for(int i=scores.length-1; iindex; i--){

scores[9]=scores[9-1]; // 假如从 9 开始,第9个元素等于(9-1)个元素。。。

//即 “把第 8 个元素的值给了第 9 个元素”8到9 可不就是后 移了 循环以此类推 7=6 ; 5=4; 右边给左边,菜鸡!

}

java中如何实现移位循环?

可以自己定义一个方法,先把右移的最低位保存起来(左移就是最高位),再用移一位,再把最低位加上去,循环n次

java写一个方法使数组[1,3,5,7]循环右移2位后为[5,7,1,3]

import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

public class $ {

public static void main(String... _) {

Integer[] arr = { 1, 3, 5, 7 };

List data = new ArrayList();

int len = arr.length / 2;

for (int i = len; i arr.length; i++) {

data.add(arr[i]);

}

for (int i = 0; i len; i++) {

data.add(arr[i]);

}

arr = (Integer[]) data.toArray(new Integer[0]);

System.out.println(Arrays.deepToString(arr));

}

}

java循环矩阵移位

import java.util.Scanner;

public class FiveJuZheng {

public static void main(String[] args) {

int[][] arr = { { 1, 2, 3, 4, 5 }, { 6, 7, 8, 9, 10 },

{ 11, 12, 13, 14, 15 }, { 16, 17, 18, 19, 20 },

{ 21, 22, 23, 24, 25 } };

int x = 0 , y = 0;

boolean flag = true;

Scanner sc = new Scanner(System.in);

do {

System.out.println("请输入两个位移量(注:不能超过5或者-5,用空格分开)");

String readline = sc.nextLine();

String[] numbers = readline.split(" ");

if(numbers.length  2){

System.out.println("警告!输入有误:少于两个数!");

continue;

}

x = Integer.parseInt(numbers[0]);

y = Integer.parseInt(numbers[1]);

if(numbers.length == 2  x  5  x  -5  y  5  y  -5){

flag = false;

}else{

System.out.println("警告!输入有误:数值须在(-5 ,5)内,不包括-5和5!");

}

} while (flag);

arr = xidc(arr, x);

arr = yidc(arr, y);

for (int i = 0; i  5; i++) {

for (int j = 0; j  5; j++) {

System.out.print(arr[i][j] + "\t");

}

System.out.println();

}

}

/**

 * 处理数组下沉

 * @param arr 源数组

 * @param x 下沉行数

 * @return 下沉后的数组

 */

private static int[][] xidc(int[][] arr, int x) {

int[] temp = new int[5];

if (x  0) {

x = 5 + x; //输入为负时换成对应的正数行  上浮2行 等于 下沉3行

}

for (int k = 0; k  x; k++) {

for (int i = 4; i  0; i--) {

int line = i - 1;

temp = arr[i];

arr[i] = arr[line];

arr[line] = temp;

}

}

return arr;

}

/**

 * 处理数组向右移动

 * @param arr 源数组

 * @param y 右移列数

 * @return 移位后数组

 */

private static int[][] yidc(int[][] arr, int y) {

int[] temp = new int[5];

if (y  0) {

y = 5 + y;  //输入为负时换成对应的正数行  左移2列 等于 右移3列

}

for (int k = 0; k  y; k++) {

for (int i = 4; i  0; i--) {

int line = i - 1;

for (int j = 0; j  5; j++) {

temp[j] = arr[j][i];

arr[j][i] = arr[j][line];

arr[j][line] = temp[j];

}

}

}

return arr;

}

}

简测可以达到效果。

请教java的for循环问题!

这种方式是jdk1.5就开始有的

这种方式优点:写起来方便,不需要再获得迭代器,无论是集合(必须用到泛型,自然通过编译就能检查一部分错误,那么提取速度就快,不需要判断是什么类型),还是数组(自然数据类型一致,速度也快)都可以用此方法。

缺点:如果list是空时需要单独避免,不像迭代器 while(),小括号里面直接用迭代器的next后移来判断是否有值,但是,上面的for循环就必须先判断是否为空,否则会出错;低版本的jdk不支持上面的方式。

举个常用的:

String[] stringArray = tempString.split("-");

if( stringArray !=null ){

for( String s: stringArray ){

//

}

}

/*

Item是自定义类

*/

ListItem itemList = new ArrayListItem();

itemList.add(...);

for( Item item: itemList ){

//...

}

希望我说的明白 ;-)

关于java循环后移和java循环移位的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-27,除非注明,否则均为首码项目网原创文章,转载请注明出处。