JavaRush /Java блогу /Random-KY /Javaдагы киргизүү/чыгаруу агымдары жана саптары
articles
Деңгээл

Javaдагы киргизүү/чыгаруу агымдары жана саптары

Группада жарыяланган
Java топтом китепканасынын классы маалыматтарды киргизүү үчүн колдонулат Scanner. Javaдагы киргизүү/чыгаруу агымдары жана саптары - 1Бул класс колдонула турган программага импорттолушу керек. Бул коомдук класс программа codeунда башталганга чейин жасалат. Класста стандарттык киргизүү агымынан берилген типтеги кийинки символду окуу, ошондой эле мындай символдун бар экендигин текшерүү ыкмалары бар. Киргизүү агымы менен иштөө үчүн сиз Сканер классынын an objectисин түзүшүңүз керек , аны түзүү учурунда ал кайсы киргизүү агымы менен байланыштырыла турганын көрсөтүү керек. Java тorндеги стандарттык киргизүү агымы (клавиатура) - an object менен көрсөтүлөт System.in. Ал эми стандарттык чыгаруу агымы (дисплей) сизге мурунтан эле тааныш an object System.out. Ката чыгаруу үчүн стандарттуу агым дагы бар - System.err, бирок аны менен иштөө биздин курстун чегинен тышкары.
import java.util.Scanner; // импортируем класс
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in); // создаём an object класса Scanner
        int i = 2;
        System.out.print("Введите целое число: ");
        if(sc.hasNextInt()) { // возвращает истину если с потока ввода можно считать целое число
          i = sc.nextInt(); // считывает целое число с потока ввода и сохраняем в переменную
          System.out.println(i*2);
        } else {
          System.out.println("Вы ввели не целое число");
        }
    }
}
hasNextDouble()Класстын an objectисине колдонулган ыкма Scannerтүрүн чыныгы санын киргизүү агымынан окуй аларын текшерет doubleжана метод nextDouble()аны окуйт. Эгер сиз маанини алгач аны текшербей туруп окууга аракет кылсаңыз, программаны аткаруу учурунда катага туш болушуңуз мүмкүн (мүчөлөрдү оңдоочу мындай катаны алдын ала байкаbyte). Мисалы, төмөнкү программага реалдуу санды киргизип көрүңүз:
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        double  i = sc.nextDouble(); // если ввести букву s, то случится ошибка во время исполнения
        System.out.println(i/3);
    }
}
nextLine()Ошондой эле белгилердин бүтүндөй ырааттуулугун окууга мүмкүндүк берүүчү ыкма бар , б.а. сап, бул ыкма аркылуу алынган маани класс an objectинде сакталышы керек дегенди билдирет String. Төмөнкү мисалда ушундай эки an object түзүлөт, андан кийин колдонуучунун киргизүүсү аларга бирден жазылат, андан кийин экранда киргизилген символдордун ырааттуулугун бириктирүү менен алынган бир сап көрсөтүлөт.
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s1, s2;
        s1 = sc.nextLine();
        s2 = sc.nextLine();
        System.out.println(s1 + s2);
    }
}
hasNext()Киргизүү агымында кандайдыр бир символдор калганын текшерген ыкма да бар . Класста Stringсаптарга колдонула турган көптөгөн пайдалуу ыкмалар бар (методдун аталышынан мурун биз ал кайтарган маанинин түрүн көрсөтөбүз):
  1. int length()— саптын узундугун (андагы символдордун санын) кайтарат;
  2. boolean isEmpty()— саптын бош экенин текшерет;
  3. String replace(a, b)— a символу (char тибиндеги литерал же өзгөрмө) b символу менен алмаштырылган сапты кайтарат;
  4. String toLowerCase()— баштапкы саптагы бардык символдор кичине тамгага айландырылган сапты кайтарат;
  5. String toUpperCase()— баштапкы саптагы бардык символдор баш тамгага айландырылган сапты кайтарат;
  6. boolean equals(s)— эгер метод колдонулган сап метод аргументинде көрсөтүлгөн s сапка дал келсе, чындыкты кайтарат ( ==башка an objectтер сыяктуу сап операторун колдонуу менен салыштырууга болбойт);
  7. int indexOf(ch)— саптагы ch символунун индексин кайтарат (индекс символдун иреттик номери, бирок символдор нөлдөн баштап номерленет). Эгерде каарман такыр табылбаса, анда ал -1 кайтып келет. Эгерде символ сапта бир нече жолу пайда болсо, анда ал өзүнүн биринчи учурунун индексин кайтарат.
  8. int lastIndexOf(ch)- мурунку ыкмага окшош, бирок символ сапта бир нече жолу чыкса, акыркы көрүнүштүн индексин кайтарат.
  9. int indexOf(ch,n)— саптагы ch символунун индексин кайтарат, бирок n индексинен текшерүүнү баштайт (индекс символдун иреттик номери, бирок символдор нөлдөн баштап номерленет).
  10. char charAt(n)— n индексинин астындагы сапта жайгашкан символдун codeун кайтарат (индекс символдун сериялык номери, бирок символдор нөлдөн баштап номерленет).
public class Main {
    public static void main(String[] args) {
        String s1 = "firefox";
        System.out.println(s1.toUpperCase()); // выведет «FIREFOX»
        String s2 = s1.replace('o', 'a');
        System.out.println(s2); // выведет «firefax»
        System.out.println(s2.charAt(1)); // выведет «i»
        int i;
        i = s1.length();
        System.out.println(i); // выведет 7
        i = s1.indexOf('f');
        System.out.println(i); // выведет 0
        i = s1.indexOf('r');
        System.out.println(i); // выведет 2
        i = s1.lastIndexOf('f');
        System.out.println(i); // выведет 4
        i = s1.indexOf('t');
        System.out.println(i); // выведет -1
        i = s1.indexOf('r',3);
        System.out.println(i); // выведет -1
    }
}
Колдонуучу клавиатурадан киргизген сапта бардык боштуктардын индекстерин көрсөтө турган программанын мисалы:
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        for(int i=0; i < s.length(); i++) {
            if(s.charAt(i) == ' ') {
                System.out.println(i);
            }
        }
    }
}
Булакка шилтеме: Javaдагы I/O агымдары жана саптары
Комментарийлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION