我试图在2D阵列上打印出坐标指示符...
我已经用另一个类来实例化数组中的对象。
我需要在两个(本地?)变量中存储坐标,然后在打印数组中显示这些坐标的位置。 (已经用各种对象实例化了)
这是我到目前为止的代码片段,但我无法获得C' C'在阵列上的正确位置打印。我厌倦的几个选项,要么根本不打印,要么打印出C' C'在左上角。
这是我厌倦的一个选项:此选项无法打印“C' C'一点都不
private int cX=0;
private int cY=0;
//Randomly set coordinates on array.
for(int i=0; i<array.length; i++){
for(int j=0; j<array[i].length; j++){
int x = randGen.nextInt(9);
int y = randGen.nextInt(9);
if (array [x][y].display()=='.'){
x=cX;
y=cY;
}
}
}
// print array
private void displayArray()
{
for (int i = 0; i < array.length; i++){
for (int j = 0; j < array[i].length; j++){
if ((array [i][j].display()==cX)&&
(array [i][j].display()==cY))
System.out.print("C");
System.out.print(board [i][j].display()+"\t")
}
System.out.println("\n");
}
}
答案 0 :(得分:0)
如果我理解正确,您是否希望将坐标保存到某种数据结构中,然后再显示它们?
为此目的创建课程是否合适?例如。 一个名为Coordinator的类,它拥有X&amp; Y值。
稍后创建一个你用X&amp; amp; Y值并将其放入ArrayList。
代码示例:
//Creating the a object holding 2 values
Coordinator cords = new Coordinator(randGen.nextInt(9), randGen.nextInt(9));
//Putting in the object to the data structure
List<Coordinator> list = new ArrayList<>();
list.add(cords);
解释和代码示例应该可以帮助您自己解决这个问题。
答案 1 :(得分:0)
此选项根本不打印“C”。
您当前的代码示例确实永远不会打印'C'。
for (int j = 0; j < array[i].length; j++){
if ((array [i][j].display()==cX)&&
(array [i][j].display()==cY))
只有当cX等于cY并且两者都等于分配给数组的ascii代码值时, if 条件才为真(对于'。',这是值46)。但你可能只想找到cX,cY位置并打印'C'。你应该尝试使用当前的i和j值来保持你的位置(cX,cY)。
if ((i==cX)&&(j==cY))
在左上角打印'C'
您永远不会更改该位置的数组内容。您设置的x和y将被覆盖,以后无法访问
int x = randGen.nextInt(9);
int y = randGen.nextInt(9);
if (array [x][y].display()=='.'){
x=cX;
y=cY;
}
你想找到一个随机的位置让你的'C'出现,就像在棋盘游戏中一样吗? 然后,您需要将找到的x和y坐标分配给cX和cY。正确的值将分配给左侧变量。
cX = x;
cY = y;
我希望我理解你,这有帮助。
答案 2 :(得分:0)
为了完整性:我想我已经解决了。 (好吧它似乎仍然有效)。 谢谢你的帮助!
<script type="text/javascript">
var condition = '@[passed condition value here]';
if (condition) {
// show panel
document.getElementById("yourdivid").style.visibility = "visible";
}
else {
// hide panel
document.getElementById("yourdivid").style.visibility = "hidden";
}
</script>
<div id="yourdivid"></div>
答案 3 :(得分:0)
private double[][] mLatLng = {
{19.01062463, 73.01141475},
{19.02369039, 73.00778391},};
public void onMapReady(GoogleMap googleMap) { googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
Bitmap icon = BitmapFactory.decodeResource(getResources(), R.drawable.ic_icon);
for (int i = 0; i < mLatLng.length; i++) {
for (int j = 0; j < mLatLng[i].length; j++) {
googleMap.addMarker(new MarkerOptions()
.position(new LatLng(mLatLng[i][j], mLatLng[i][j]))
.title("Location" + i).icon(bitmapDescriptorFromVector(context,R.drawable.ic_icon)));