java中object转数组_在Java中将Object []数组转换为int []数组?

似乎没有简单的方法可以做到这一点,但这是我到目前为止所做的,如果有人能够纠正它,使其工作将是伟大的.在“newarray [e] = array [i] .intValue();”我收到一个错误“没有命名方法”intValue“在类型”

java.lang.Object“中找到.”

救命!

/*

Description: A game that displays digits 0-9 and asks the user for a number N.

It then reverses the first N numbers of the sequence. It continues this until

all of the numbers are in order.

numbers

*/

import hsa.Console;

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;

import java.util.Arrays;

public class ReversalGame3test

{

static Console c;

public static void main (String[] args)

{

c = new Console ();

c.println ("3. REVERSAL GAME");

c.println ("");

c.println ("Displayed below are the digits 0-9 in random order. You must then enter a");

c.println ("number N after which the computer will reverse the first N numbers in the");

c.println ("sequence. The goal of this game is to sort all of the numbers in the fewest");

c.println ("number of reversals.");

c.println (""); //introduction

List numbers = new ArrayList ();

numbers.add ("0");

numbers.add ("1");

numbers.add ("2");

numbers.add ("3");

numbers.add ("4");

numbers.add ("5");

numbers.add ("6");

numbers.add ("7");

numbers.add ("8");

numbers.add ("9");

Collections.shuffle (numbers);

Object[] array = numbers.toArray (new String [10]); // declares + shuffles numbers and converts them to array

c.print ("Random Order: ");

for (int i = 0 ; i < 10 ; i++)

{

c.print ((array [i]) + " ");

}

c.println ("");

boolean check = false;

boolean check2 = false;

String NS;

int N = 0;

int count = 0;

int e = -1;

int[] newarray = new int [10];

//INPUT

do

{

c.print ("Enter a number: ");

NS = c.readString ();

count += 1;

check = isInteger (NS);

if (check == true)

{

N = Integer.parseInt (NS);

if (N < 1 || N > 10)

{

check = false;

c.println ("ERROR - INPUT NOT VALID");

c.println ("");

}

else

{

c.print ("Next Order: ");

for (int i = N - 1 ; i > -1 ; i--)

{

e += 1;

newarray [e] = array [i].intValue ();

c.print ((newarray [e]) + " ");

}

for (int i = N ; i < 10 ; i++)

{

e += 1;

newarray [e] = array [i].intValue ();

c.print ((newarray [e]) + " ");

}

check2 = sorted (newarray);

} // rearranges numbers if valid

} // checks if N is valid number

}

while (check == false);

} // main method

public static boolean isInteger (String input)

{

try

{

Integer.parseInt (input);

return true;

}

catch (NumberFormatException nfe)

{

return false;

}

} //isInteger method

public static boolean sorted (int array[])

{

boolean isSorted = false;

for (int i = 0 ; i < 10 ; i++)

{

if (array [i] < array [i + 1])

{

isSorted = true;

}

else if (array [i] > array [i + 1])

{

isSorted = true;

}

else

isSorted = false;

if (isSorted != true)

return isSorted;

}

return isSorted;

} // sorted method

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值