You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在2d array场景中实现用户单次输入同时提供X和Y坐标?

单次输入获取XY坐标的实现方法

核心思路是读取用户输入的整行文本,按空格分割成两个部分,再转换为整数类型,同时要处理输入不合法的情况,避免程序报错。

Python 示例

while True:
    user_input = input("Enter X and Y, (eg. 5 6): ")
    try:
        # 分割输入并转换为整数
        x, y = map(int, user_input.split())
        # 可添加坐标范围校验(比如你的2D数组行数和列数限制)
        # 比如 if 0 <= x < row_count and 0 <= y < col_count: break
        break
    except ValueError:
        print("输入格式错误,请输入两个用空格分隔的数字,示例:5 6")

print(f"选定坐标:X={x}, Y={y}")

Java 示例

import java.util.Scanner;

public class BattleShipInput {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int x = 0, y = 0;
        boolean validInput = false;

        while (!validInput) {
            System.out.print("Enter X and Y, (eg. 5 6): ");
            if (scanner.hasNextInt()) {
                x = scanner.nextInt();
                if (scanner.hasNextInt()) {
                    y = scanner.nextInt();
                    validInput = true;
                } else {
                    System.out.println("缺少第二个坐标,请重新输入");
                    scanner.next(); // 清除无效输入
                }
            } else {
                System.out.println("输入格式错误,请输入两个数字");
                scanner.next(); // 清除无效输入
            }
        }

        System.out.printf("选定坐标:X=%d, Y=%d%n", x, y);
        scanner.close();
    }
}

通用逻辑说明

不管使用哪种编程语言,步骤都是:

  • 提示用户输入格式(明确用空格分隔两个坐标)
  • 读取整行输入内容
  • 按空格拆分输入字符串
  • 将拆分后的内容转换为数字类型
  • 校验输入是否符合要求(数量、范围等),不符合则重新提示

内容的提问来源于stack exchange,提问作者Peanut

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 01:17:07