Так много для этого простого вопроса, но я просто хотел выделить новую функцию на Java, которая позволит избежать всех путаниц в индексировании в массивах даже для новичков. Java-8 абстрагировал задачу итерации для вас.
int[] array = new int[5];
//If you need just the items
Arrays.stream(array).forEach(item -> { println(item); });
//If you need the index as well
IntStream.range(0, array.length).forEach(index -> { println(array[index]); })
В чем польза? Ну, с одной стороны, это читаемость, как английский. Во-вторых, вам не нужно беспокоиться о ArrayIndexOutOfBoundsException
читать ключ реестра из HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ pcmcia, значение «Пуск», это ноутбук, если start = 0, в противном случае это настольный компьютер, если start не существует или start! = 0.
Вот хорошая статья Microsoft, в которой предлагается взглянуть на несколько других классов WMI, чтобы лучше понять, является ли компьютер портативным или настольным компьютером:
http://technet.microsoft. com / en-us / library / cc180825.aspx
Win32_SystemEnclosure, ChassisTypes(1)=10
Win32_Battery or Win32_PortableBattery
Win32_PCMCIAController
Win32_DriverVXD.Name = "pccard"
Win32_ComputerSystem.Manufacturer
Win32_ComputerSystem.Model
И также предлагает поискать в реестре схему питания.
См. http://www.microsoft.com/technet/scriptcenter/resources/qanda/sept04/hey0921.mspx и http: / /msdn.microsoft.com/en-us/library/aa387204(VS.85).aspx, в котором говорится, что:
Эта документация основана на описаниях классов CIM, опубликованных DMTF.
Предположительно, это означает, что производитель должен был предоставить Windows некоторую информацию, чтобы она могла ее обнаружить.
Я не думаю, что есть однозначный правильный ответ на этот вопрос, и я обнаружил, что WMI для него ненадежен, но я использовал функцию Win32 GetSystemPowerStatus (), чтобы определить, существует ли система аккумулятор, очевидно системный аккумулятор == портативный компьютер.
Я никогда не пробовал это на настольном компьютере с ИБП?!
Я почти уверен, что это будет зависеть от того, позаботился ли производитель о предоставлении таких данных для текущего набора микросхем. Если нет, то «Другое» - лучшее, что вы можете сделать.
Ознакомьтесь с этой несколько связанной статьей , в которой также предлагается напрямую запрашивать BIOS .