自学python一年开发,最后还是转型成为java工程师!


语言是相同的, 不管c还是python还是java, 语法感觉差不多,但是python真的难找工作,几个招聘平台溜溜圈看了下, 屈指可数, 于是萌生出扩展java路线, 弥补找工作的优势。以后可能学java的时间更多一点吧, python还是每周研究研究爬虫,增加一点乐趣吧。

学无止境,从Python到Java也就是从编译器的转变开始-----
在这里插入图片描述

可能我之前基础还不错吧, 我感觉看java挺顺利的, 我没有买书, 是从网上随便找的一些视频, 他很方便的带我学了些java的关键词和基础体系, 差不多一个礼拜,我就看完了入门的所有知识了, 然后就开始自己编写一些代码,搞点事情, 不会的语法就去百度,反正不要阻挡自己学习的脚步就行了!


python是简单的, 它不需要很多定义, 就是那种拿来就可以用,

Java是复杂的, 他需要变量声明, 也需要初始化值,在某些情况下,他做的很多, 但是执行速度确实很快

怎么去切换二种语言呢, 很简单,用python就从简单的想, 用java就得想多一点。至少我这样切换起来感觉还行, 并不会出现很大的矛盾差。


从Java的编译器开始:

我没想其他的, 最开始学习直接问大佬们用什么,有人提到IDEA那就直接下IEDA, 反正和pycharm 界面, 快捷键啊什么的 都是一样的,用起来也挺顺手,不是很喜欢其他的编译器, 他们没有代码补全, 这很不适合新手, 也不是适合我这样的追求敲击速度党, 所以选择IDEA是一个不错的选择。


规划路线什么的;

有多少人还记得小时候的梦想呢, 比如有人小时候说, 我要成为科学家,成为宇航员,明星什么的, 那是孩童的天真, 无忧无欲, 现在呢,兄弟们,到底是梦想重要还是金钱重要, 我们总要背负一种责任, 赚钱的责任, 关于路线, 先不要考虑, 花点时间先入手基础语法, 多看看官方文档, 路线我们就是要什么行业好赚钱, 赚多钱,多赚钱, 那么入门之后, 这就是你的路线, 比如我想之后去开发安卓, 那么后面我可能就回去看这些的框架学习, 如果觉得我说的都是屁话, 你自学不了, 那你就花点钱去培训班吧, 哪里有一整套路线规划, 毕竟是金钱的味道, 别人都替你铺好的路, 共勉。


编写的第一个JAVA三子棋游戏:

这个游戏其实挺简单的, 三子棋的游戏, 这玩意如果我用python也就是七八十行,也很容易完成, 但是因为学了java, 那么就得熟悉一下java的语法, 他用了我120多行,相比python来说, 这确实不简洁, 但是没关系。

代码放下面,需要的自取, 算是一次小锻炼吧。

import java.util.Scanner;
import java.util.concurrent.ScheduledExecutorService;

public class ChessGame {
    public static void Input(int x, int y, String flag, String[][] chess) {
        // 根据玩家一和玩家二不断输入的位置 创建棋盘
        chess[x - 1][y - 1] = flag;
        Look(chess);
        Judge(chess);
    }

    public static void Judge(String[][] chess) {
        // 每次输入进行一次判断 直到游戏的结束
        for (int i = 0; i < chess.length; i++) {
            if ((chess[i][0] == chess[i][1]) && (chess[i][1] == chess[i][2])) {
                // 判断行
                if (chess[i][0] == "x") {
                    System.out.print("玩家一获胜");
                    // 关闭程序
                    System.exit(0);
                } else if (chess[i][0] == "o") {
                    System.out.print("玩家二获胜");
                    // 关闭程序
                    System.exit(0);
                }
            } else if ((chess[0][i] == chess[1][i]) && (chess[1][i] == chess[2][i])) {
                // 判断列
                if (chess[0][i] == "x") {
                    System.out.print("玩家一获胜");
                    // 关闭程序
                    System.exit(0);
                } else if (chess[0][i] == "o") {
                    System.out.print("玩家二获胜");
                    // 关闭程序
                    System.exit(0);
                }
            }
        }
        if ((chess[0][0] == chess[1][1]) && (chess[1][1] == chess[2][2]) &&
                chess[1][1] != "\t") {
            // 判断正对角线
            if (chess[0][0] == "x") {
                System.out.print("玩家一获胜");
                // 关闭程序
                System.exit(0);
            } else if (chess[0][0] == "o") {
                System.out.print("玩家二获胜");
                // 关闭程序
                System.exit(0);
            }
        }
        if ((chess[0][2] == chess[1][1]) && (chess[1][1] == chess[2][0]) &&
                chess[1][1] != "\t") {
            // 判断反对角线
            if (chess[0][2] == "x") {
                System.out.print("玩家一获胜");
                // 关闭程序
                System.exit(0);
            } else if (chess[0][2] == "o") {
                System.out.print("玩家二获胜");
                // 关闭程序
                System.exit(0);
            }
        }
    }

    public static void Look(String[][] chess) {
        // 查看棋盘
        int count = 0;
        System.out.println("------------棋盘---------------");
        for (int i = 0; i < chess.length; i++) {
            for (int j = 0; j < chess[i].length; j++) {
                count += 1;
                System.out.print(chess[i][j] + "\t");
                if (count % 3 == 0) {
                    System.out.println();
                }
            }
        }
        System.out.println("------------------------------");
    }

    public static void main(String[] args) {
        // 设置一个 3 x 3 的ox棋牌游戏
        System.out.println("这是一个3x3的简易棋类游戏,玩家之家相互输入o或者x,\n" +
                "一旦出现三连击, 那么这个玩家获胜!");
        Scanner in = new Scanner(System.in);
        int size = 3;
        String[][] chess = new String[size][size];
        //  初始化棋盘
        for (int i = 0; i < chess.length; i++) {
            for (int j = 0; j < chess[i].length; j++) {
                chess[i][j] = "\t";
            }
        }
        int x;
        int y;
        for (int i = 0; i < 4; i++) {
            System.out.print("玩家一输入x的位置(3x3):");
            x = in.nextInt();
            y = in.nextInt();
            if (x <= 3 && y <= 3) {
                Input(x, y, "x", chess);
            } else {
                System.out.println("输入位置越界,请重新输入:");
                continue;
            }
            System.out.print("玩家二输入o的位置(3x3):");
            x = in.nextInt();
            y = in.nextInt();
            if (x <= 3 && y <= 3) {
                Input(x, y, "o", chess);
            } else {
                System.out.println("输入位置越界,请重新输入:");
                continue;
            }
        }
        System.out.print("平局");
    }

}

后记:

人生苦短, 我用python
我要赚钱, 我用Java

这很悲催真的, 无数的广告和平台什么的, 宣传python的简单易学, 轻轻松松就能跳转年薪百万,越来越多人涉及python的开发,我是去年早就涉及到了,经过这么久的开待, 还是决定多学java!